1
(function() {
function alertJSON(json) {
    alert("json:" + json);
}
function treeInit() {
    buildJSONTree(alertJSON);
}
function buildJSONTree(callback) {
    var handleSuccess = function(o) {
        var json = YAHOO.lang.JSON.parse(o.responseText);
        callback(json);
    };
    var handleFailure = function(o) {
        alert("FAILURE");
    };
    var asyncCallback = {
        success : handleSuccess,
        failure : handleFailure,
        timeout : 5000
    };
    var send = function(o) {
        var sUrl = "http://127.0.0.1:8080/TestMVC/resources/json/category-subject.json";
        YAHOO.util.Connect.asyncRequest('GET', sUrl, asyncCallback);
    }();
}
YAHOO.util.Event.onDOMReady(treeInit);
})();

然后在我的 html 文件中包含该脚本并执行。我可以在调试器中跟踪它,直到它执行asyncRequest,它只是返回并且我的处理程序都不执行。

4

1 回答 1

2

我做了一个小提琴,对我来说它正在工作。如果资源可用,则调用成功回调。

http://jsfiddle.net/uZfX5/

在小提琴中,服务器不返回 json,因此 json 解析器崩溃,但我认为这不是重点。

于 2012-07-29T14:52:53.903 回答