1

我有一个 AJAX xml 解析:

$.ajax({
    type:"GET",
    url: "data/content_data.xml",
    dataType:"xml",
    success: function(xml) {

单击某些按钮元素后是否有任何选项可以更改源?例如,我点击 button_01 和脚本加载源 from url: "data/content_data_01.xml",点击 button_02 加载源 from url: "data/content_data_02.xml"

4

2 回答 2

0

设置一些按钮:

<input type="button" id="B01" value="Get nr. one" />
<input type="button" id="B02" value="Get nr. two"/>

并做一些 jQuery 的东西:

$('button').on('click', function() { //attach click handler
    doAjax(this.id.replace('B','')).done(function(xml) { // remove B and do ajax
        //do something with xml in the deferred callback
    });
});

function doAjax(url_id) { //url_id value will be 01 or 02 and ....
    return $.ajax({
        type:"GET",
        url: "data/content_data_"+url_id+".xml", //is inserted here in the url
        dataType:"xml"
    });
}
于 2012-08-21T15:32:13.290 回答
0

绝对地。有很多方法可以做到这一点。基本上,您只需为您的 url 值使用字符串变量而不是文字字符串。您也许可以定义一个对象,您将使用它来查找这些值

var buttonIDtoURL = {
    "button_01": "data/content_data_01.xml",
    "button_02": "data/content_data_02.xml"
}

$(".button_class").click(function() {
    var urlToUse = buttonIDtoURL[$(this).id];
    $.ajax({
        type:"GET",
        url: urlToUse,
        dataType:"xml",
        success: function(xml) {
            // your success handler here
        }
    });
 });
于 2012-08-21T15:28:11.433 回答