jQuery无法找到附加到列表的选项

时间:2016-01-24 04:28:00

标签: jquery html

我有两个列表,一个有区域,另一个有邮政编码。当我从一个列表中选择一个区域时,我希望在另一个列表中突出显示正确的邮政编码。我必须在加载页面时动态添加postalCodes。邮政编码被添加并显示得很好,但是我无法使用jQuery找到正确的postalCode,所以我决定将我的postalList转储到控制台以查看它的外观。输出显示选项为空" 0 {} 1 {} 2 {} 3 {} 4 {} 5 {}"。

看看我的功能。

function GetPostal() {
$.ajax({
    type: "GET",
    url: api_url + 'home/Area/GetPostal', 
    success: function(_d) {
        $.each(_d, function(postal) {
            $('select[name="postalList"]').append($('<option/>', {
                value: _d[postal].Id,
                text: _d[postal].Name
            }));
        });
        console.log(JSON.stringify($('select[name="postalList"]')));
    }
}).fail(function(_d) {
    //Handle error
    });
}

1 个答案:

答案 0 :(得分:1)

您尝试stringify的$('select[name="postalList"]')不是JSON对象,它是jQuery构造的对象。它是jQuery找到的DOM元素的包装器。要确保选择选项在那里,您可以console.dir( $('select[name="postalList"]').find('option') )

您可以按值$('[value="yourOptionValueAttribute"]')找到一个选项,只需将yourOptionValueAttribute替换为您从_d[postal].Id获得的值。如果您要为选项添加ID,则可以$('#yourOptionId')