我正在尝试使用JavaScript和JQuery重新加载选择的选项列表,但我需要保留以前选择的值。
这是我的代码:
var temp = $('#SelectName').chosen().val();
select = document.getElementById('SelectName');
if (select.options.length > 0) {
$('#SelectName').find('option').remove();
}
for (var i = 0; i < result.length; i++) {
var option = document.createElement('option');
option.value = result[i].myIdVariable;
option.text = result[i].myTextVariable;
select.appendChild(option);
}
$('#SelectName').chosen(temp);
$('#SelectName').trigger('chosen:updated');
使用此代码,我松开了所有选择的值。
答案 0 :(得分:1)
我用以下代码解决了
var temp = $('#SelectName').val();
select = document.getElementById('SelectName');
if (select.options.length > 0) {
$('#SelectName').find('option').remove();
}
for (var i = 0; i < result.length; i++) {
var option = document.createElement('option');
option.value = result[i].myIdVariable;
option.text = result[i].myTextVariable;
select.appendChild(option);
}
$('#SelectName').val(temp);
$('#SelectName').trigger('chosen:updated');
区别在于现在我使用:
var temp = $('#SelectName').val();
和
$('#SelectName').val(temp);
以前:
var temp = $('#SelectName').chosen().val();
和
$('#SelectName').chosen(temp);