0

私はいくつかのjsonをロードするためのボタンにいくつかの本当に単純なコードを持っています、そしてそれは私がアクセスしたいjson内のデータです:-

function loadJson(){
    var json = $.getJSON("samplejson.js");
    document.getElementById('header2').innerHTML = json;
}

samplejson.js の内容は次のとおりです。

person = { "name" : "Nicolas", "age" : "22", "alive" : true, "gender" : "Male", "power" : "1" }

関数を実行するボタンをクリックすると、[object Object] が innerHTML に返されます。このコンテキストでは、json はオブジェクトであることを知っているので、それは当然のことです。

たとえば、innerHTML を "Nicholas" に変更したい場合は、構文が必要です。json.person.name は機能しません。json[0].name も json.person[0].name もありません。他のいくつかの変種を試しましたが、どれも成功しませんでした。

4

1 に答える 1

1

$.getJSONajax 呼び出しの結果ではなく、jQuery 非同期要求オブジェクトを返します。ajax から取得したデータが必要な場合は、コールバックで使用する必要があります。

$.getJSON("samplejson.js").done(function (json) {
    $("#header2").html(json);
});
于 2013-07-22T16:34:46.707 に答える