无法将ajax XML响应值附加到选择列表

时间:2016-08-02 06:32:55

标签: javascript ajax

我无法将回复附加到我的选择列表中,即地址标记。

我尝试了$(.each)功能,但仍无法实现。

JavaScript的:

<script>
/*Ajax request to get list of address*/
$.ajax({
    url : url + 'Customer/get_address_list',
    data :{
        projectId : 1
    },
    dataType : 'xml',
    contentType : 'application/x-www-form-urlencoded',
    crossDomain : true,
    timeout : 10000,
    async : false,
    cache : false,
    type : 'POST',
    success : function(xml) {
        $(xml).find('address').each(function(){
            var value = $(this).text();
            $("#address").append("<option " + value + "</option>");
        });
    }
});
</script>

HTML:

<div class="col-lg-12  columns">
    <select id="address" name="address" class="col-lg-12  columns"  >
    </select>
</div>

服务器响应:

<addressList>
    <address>100East</address>
    <address>100KennedyEast</address>
    <address>100BoulevardEast</address>
    <address>110KennedyBoulevardEast</address>
    <address>1002BoulevardEast</address>
    <address>3002KennedyBoulevardEast</address>
    <address>17002BoulevardEast</address>
    <address>1802KennedyBoulevardEast</address>
    <address>2084BoulevardEast</address>
    <address>8804KennedyBoulevardEast</address>
    <listException>false</listException>
    <listExceptionId>0</listExceptionId>
    <listSize>10</listSize>
    <nextPage>false</nextPage>
    <pageNumber>0</pageNumber>
    <totalPages>0</totalPages>
    <totalRecords>0</totalRecords>
</addressList>

1 个答案:

答案 0 :(得分:0)

嗯..我不知道问题出在哪里。代码似乎很好。也许它与解析xml有关。 我可以建议使用$.parseXML吗?的 jQuery Docs

更新: 我不确定,但我认为问题可能是您尝试对来自服务器的响应使用$ .find方法。它不是一个jquery对象,也不是一个html dom,所以我不确定使用$(xml)是否会生成一个可以调用find的jquery对象。