日期:2014-05-16  浏览次数:20298 次

JS ajax 执行先后的 问题。。。来帮个!!!!


var currencySelhtm = "";
$.ajax({
    url: "/servlet/CurrencyAction.do",
    type: "post",
    dataType: "xml",
    data: "action=showall",
    success: function(xmlResult) {
        var $xml = $(xmlResult).find("Currency");
        if ($xml.length < 1) {
        } else {
            for (var m = 0; m < $xml.length; m++) {
                var Currency_Name = $xml.eq(m).attr("Currency_Name");
                var Currency_Signcode = $xml.eq(m).attr("Currency_Signcode");
                var Currency_ID = $xml.eq(m).attr("Currency_ID");
                currencySelhtm += '<option value="' + Currency_ID + '">' + Currency_Name+'</option>';

            }
        }
    },
    error: function() {
        currencySelhtm = "";
    }
});
alert(currencySelhtm);

result += "币种:<select name='tcurrencys' id='tcurrencys'><option value='-1'>---</option >" + currencySelhtm + "</select><br/><br/>";



有以上代码,我想动态生成币种 这个下拉框的 OPT选项。

遇到的问题:
程序先执行了 result 的拼串 动作。使得currencySelhtm  后做 AJAX 获取的数据 无法拼凑进 目标SELECT 元素。大家有没有其他的 办法?谢谢了
------解决方案--------------------
var currencySelhtm = "";
$.ajax({
    url: "/servlet/CurrencyAction.do",
    type: "post",
    dataType: "xml",
    data: "action=showall",
    success: function(xmlResult) {
        var $xml = $(xmlResult).find("Currency");
        if ($xml.length < 1) {
        } else {
            for (var m = 0; m < $xml.length; m++) {
                var Currency_Name = $xml.eq(m).attr("Currency_Name");
                var Currency_Signcode = $xml.eq(m).attr("Currency_Signcode");
                var Currency_ID = $xml.eq(m).attr("Currency_ID");
           &