0

このトピックに言及しているスタック オーバーフローのすべての投稿を読みました。

テーブルにデータをロードしたいと思います-jQueryを使用します(jsにこれを行うネイティブな方法がない限り)ここに私のコードがあります。

[補足質問 - 応答オブジェクトを画面にダンプする方法はありますか? だから私はすべての要素が役立つのを見ることができますか?]

メインページ

<html>
<head><script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script></head>
<body>
<table>
    <tbody id="testBody">
    </tbody>
</table>

<script>
$( document ).ready( function() {
$( '#testBody' ).html( 'Here We Go...<br/>' );

$.ajax({
type: "POST",
url: "ajax_list_json.htm",
dataType: "json",
success: function ( response ) {
    if( response.success ) {
        //...do something...
        $('#testBody').html('<p>We were successful!</p>');
    } else {
        //...tell user there was a problem...
        $('#testBody').html('<p>There was a problem on the server... Dang.</p>');
        //$('#testBody').append( response ); // was trying to dump the response
    }
}

})

});
</script>
</body>
</html>

そして、これが私が送り返している JSON です...これは現在、この形式でハードコードされていますが、プロセスが正しくなり次第、動的に焼き付けます。

{
"people": [
    { "firstName":"John" , "lastName":"Doe" },
    { "firstName":"Jane" , "lastName":"Smith" },
    { "firstName":"Rusty" , "lastName":"Morals" },
    { "firstName":"oo'ja" , "lastName":"d'Addy" },
    { "firstName":"Wink" , "lastName":"Martindale" },
    { "firstName":"Woody" , "lastName":"Knowl" },
    { "firstName":"Tom" , "lastName":"Thumb" },
    { "firstName":"Peter" , "lastName":"Pan" }
]
} 

Firebug の応答は正しく返されます。または、少なくとも期待どおりの結果が得られます。Firebug の [JSON] タブには正しい配列が表示されるため、正しくフォーマットされていると思います。

何か助けはありますか?「応答のエラーチェックを通過するまで、データをテーブルに入れることはできないと思います... :(

4

1 に答える 1

3

リクエストに問題がある場合、successコールバックは起動しません。

successJSON はコールバックに直接渡されます。

$.ajax({
    type: "POST",
    url: "ajax_list_json.htm",
    dataType: "json",
    success: function ( JSONdata ) {
        // all's good, loop through your JSONdata
    },
    error: function () {
        // there's an error
    }
});
于 2013-01-21T18:53:08.780 に答える