0
我有一个dojo.xhrGet
返回对象的正确数组:道场JSON选择
<script type="text/javascript">
dojo.require("dijit.form.FilteringSelect");
dojo.require("dojo.data.ItemFileReadStore");
dojo.addOnLoad(function() {
var name = dojo.byId("nafn");
name.setAttribute("dojoType", "dijit.form.ComboBox");
dojo.parser.parse(name.parent);
dojo.xhrGet({
url: "http://localhost:8080/App/gots",
handleAs: "json",
load: function(data){
dojo.byId("container").innerHTML = data;
dojo.parser.parse("container");
console.log(data);
var store = new dojo.data.ItemFileReadStore({ data: data });
console.log(store);
var filteringSelect = new dijit.form.ComboBox({
id: "stateSelect",
name: "state",
value: "Search",
store: store,
searchAttr: "bondiuser"
},
"nafn");
},
onError: function(err) {
console.log(err);
},
headers:{"Accept":"application/json"}
});
});
</script>
当我输出到我的JavaScript控制台,我可以看到我的对象,当我做:
console.log(data);
但ItemFileReadStore
仍为空为什么?
您需要向我们显示从服务器收到的'data'内容。如果它只是一个对象数组,那可能是你的错误:你给ItemFileReadStore的数据参数应该是一个带有'{identifier:“id”,items:[{...},{...},...的对象。 。]},其中id是对象标识符的名称。请参阅http://docs.dojocampus.org/dojo/data/ItemFileReadStore#general-structure – Frode 2011-05-23 11:55:13
错误必须来自此。这里是json字符串:{“bondiuser”:“gilles”,“dna”:null,“eigandi”:null,“fadir”:null,“faedingardagur”:1306972800000,“fang”:null,“harafar” Lodinn”, “ID”:1, “KYN”: “Hundur”, “litur”: “Hvitur”, “modir”:空, “nafn”: “Bjartur”, “ormerki”: “123123”, “sfiNumer” :“12313123”,“stofnskra”:false,“version”:0} – gpasse 2011-05-23 12:05:55
这只是一个对象。你的服务器不应该返回一个对象数组吗? – Frode 2011-05-23 12:33:42