1

現在、xhrgetを使用してHTMLページに呼び出したいオブジェクト配列があります。これが私のサーバーからのオブジェクト配列のスニペットです:

[ 
    { "Name":"John" , "id":"1" }, 
    { "Name":"Anna" , "id":"2" }, 
    { "Name":"Peter" , "id": "3" }
    { "Name":"Peter" , "id": "4" }
]

したがって、xhrgetを使用してこのオブジェクト配列を呼び出します

require(["dojo/request", "dojo/dom", "dojo/dom-construct", "dojo/json", "dojo/on", "dojo/domReady!", "dojo/_base/xhr"], 

function (dom,json,request,domconst,on,xhr){

    dojo.ready(function(){

        var targetNode = dojo.byId("licenseContainer");  

        var xhrArgs = {
            url: "http://141.41.11.71:3000/page.json",
            handleAs: 'json',
            timeout : 2000,

            load: function(data){


            targetNode.innerHTML = data;
        },
        error: function(error){
            targetNode.innerHTML = "An unexpected error occurred: " + error;
        }
    }

    var deferred = dojo.xhrGet(xhrArgs);
    });
});

基本的に、IDで指定したnode/divに指定されたオブジェクトを配置したいと思います。しかし、私はエラーを受け取り続けます:TypeError:'undefined'は関数ではありません。

何かアドバイス?

4

1 に答える 1

1

値johnを使用してmaneプロパティにアクセスできます。data[0].Name

    var xhrArgs = {
        url: "http://141.41.11.71:3000/page.json",
        handleAs: 'json',
        timeout : 2000,

        load: function(data){


        targetNode.innerHTML = data[0].Name;
    },
    error: function(error){
        targetNode.innerHTML = "An unexpected error occurred: " + error;
    }
}

編集

すべての名前を表示するには、配列をループする必要があります。

        load: function(data){
            var html = '';
            for (var i = 0; i < data.length; i++)
                html += data[i].Name+'<br>';
            targetNode.innerHTML = html;
    },
于 2013-01-10T23:42:01.360 に答える