Dojo JSON回调总是返回错误

时间:2010-05-11 21:26:31

标签: java javascript dojo

我正在使用Dojo并对JAVA类进行AJAX调用,并尝试将程序的输出提供给客户端的Alert框。

            var showResult = function(result){
            console.log("Showing Result()");
            var store = new dojo.data.ItemFileReadStore({ data: result});
            console.dir(store);

            store.fetch( { onItem: function(data) {  alert("Hie"); },
                            onError: function(error,request){ alert("ERROR");}
            });

        };  

这是我的代码,showResult基本上是来自xhr请求的回调函数。我可以看到打印到Firebug上的console.dir(store),但是fetch函数总是返回onError块。

我的商店数组的格式为{info =“Test Message”},我需要检索“测试消息”并将其显示在“提醒”框中。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

如果result只是一个数组,则应使用new dojo.data.ItemFileReadStore({data : {items : result}})创建商店。

例如,result[{info : "Test Message 1"}, {info : "Test Message 2"}],则代码应为:

var store = new dojo.data.ItemFileReadStore({data : {items : result}});
store.fetch({
    onItem : function(item) {
        alert(store.getValue(item, "info"));
    },
    onError : function(error) {
        alert("Error!");
    }
});

答案 1 :(得分:0)

尝试 store.fetch({query:{info:'*'}},onItem:function(data){alert(“Hie”);},                             onError:function(错误,请求){alert(“ERROR”);}             });

同样你可能想看看 onComplete:function(items){console.log(items);} 是否有效,而不是onItem,值得一试。

还有console.log您的错误,以便您可以看到问题所在。

您存储的其他一些东西是否有标识符和标签集?