0

我有这段代码,我通过 AJAX 加载 XML 文件:

$("#list").on("click", "li", function (event) {
    $.ajax({
        url: 'test.xml',
        type: "get",
        context: this,
        success: function (data) {
            alert("success");
        },
        error: function () {
            alert("failure");
        }
    });
})

问题是我有一长串使用此代码的可点击元素,效率不高。有没有办法调用 AJAX 函数一次,然后将生成的数据用于列表中的其他项目?

4

1 回答 1

1

只需将返回值保存在某处

$("#list").on("click", "li", function (event) {
    var data = $("#list").data('test');
    if (data){
        //use data
    }
    else{
        $.ajax({
            url: 'test.xml',
            type: "get",
            context: this,
            success: function (data) {
                $("#list").data('test', data);
                // use data
                alert("success");
            },
            error: function () {
                alert("failure");
            }
        });
    }
})
于 2013-04-28T00:45:16.187 回答