我在表单中使用国家和州下拉列表。每当用户在下拉列表中选择国家/地区时,该国家/地区的各个州将填充在状态下拉列表中。我正在使用 AJAX 调用填充下拉列表中的状态。问题是在 Mozilla 中填充了状态,但它在 IE 中不起作用。我猜在状态下拉列表中加载状态时 jQuery 中存在一些问题。我使用的 jQuery 代码是
$('select#edit-country').change(function(e) {
$.getJSON("loadContactUsStates",{id: $(this).val(), ajax: 'true'}, function(j){
var options = '';
for (var i = 0; i < j.length; i++) {
options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
}
<!-----I guess the problem is with the below line------------------>
$("select#edit-state").html(options);
})//end json
});
最佳答案
尝试使用 append 代替 html 方法,详见 post .
编辑
其实我自己也遇到过这个问题。对我来说,答案是打电话empty首先,然后 append这与使用 html 方法具有相同的效果(我认为?)。
关于jQuery html 属性在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/412734/