我想在ITEMS
中设置多个jQuery multiselect dropdown
,具体取决于我从数据库获取的该项目的VALUE
,以“,
”分隔。
我正在hidden field
中保存此提取的数据。
实施例。
隐藏字段:hdnLots = 64,65
,批号项目:64 = Lot 1, 65 = Lot2
因此,当我收到hdnLot=65
时,在jQuery Multiselect dropdown
中只需要选择Lot2
。 同样适用于64,65。即,当选择多个值时,选择所选的所有值。
我试过了:JQuery multiselect - Set a value as selected in the multiselect dropdown
我为此写的代码是:
if ($("#<%= btnUpdateProject.ClientId %>").css('display') == "inline-block")
{
debugger;
var dataarray = document.getElementById('<%= hdnLots.ClientId %>').value.split(",");
$("#<%= ddlNoOfLots.clientid %>").val(dataarray);
}
答案 0 :(得分:13)
我希望这会对你有所帮助:
$(document).ready(function() {
$("select").multiselect({
selectedText: "# of # selected"
});
var hidValue = $("#hidSelectedOptions").val();
alert(hidValue);
var selectedOptions = hidValue.split(",");
for(var i in selectedOptions) {
var optionVal = selectedOptions[i];
$("select").find("option[value="+optionVal+"]").prop("selected", "selected");
}
$("select").multiselect('reload');
});
修改
refresh
已从最新的jQuery-MultiSelect中删除。使用reload
将解决现在的问题。
答案 1 :(得分:2)
您需要确保的一件事是数组中的值是字符串:
<select id='multipleSelect' multiple='multiple'>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<script type='text/javascript'>
$('#multipleSelect').val(['1', '2']);
</script>
答案 2 :(得分:1)
var selectedOptions = hidValue.split(",");
typeof (selectedOptions != 'undefined' && $("#hidSelectedOptions").multiselect('select', selectedOptions));