我有两个列表,一个有区域,另一个有邮政编码。当我从一个列表中选择一个区域时,我希望在另一个列表中突出显示正确的邮政编码。我必须在加载页面时动态添加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
});
}
答案 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')
。