【发布时间】:2014-09-23 14:31:47
【问题描述】:
我正在尝试在本地存储的选择菜单中设置默认选项,我使用 GUID 作为值。
<script type="text/javascript">
$(document).ready(function () {
var guid = getParameterByName("dashId");
//$("#cboDashboards").val(guid); - Attempt #1
//$("#cboDashboards > option[value=" + guid + "]").prop("selected", true); - Attempt #2
//jQuery('#cboDashboards > option[value="' + guid + '"]').prop('selected', true) - Attempt #3
});
document.getElementById("cboDashboards").onchange = function () {
localStorage.dashboardGuid = this.value;
window.location.href = "/Home/Index?dashId=" + this.value;
};
</script>
存储的 GUID 与我尝试填充组合框的 GUID 相同,但是,我尝试了三种不同的方法来尝试填充组合框,但都没有奏效。关于为什么这不能按预期工作的任何建议?
编辑 - 这种方法会对它有什么影响吗?调用它来填充组合框的值:
function populateDashboard(data) {
var options = $("#cboDashboards");
$.each(data, function () {
options.append($("<option />").val(this.DashboardGuid).text(this.Name));
});
}
我填充了一些测试数据 -
<select id="cboDashboards">
<option value="0">Select dashboard</option>
<option value="1">Select dashboard 1</option>
<option value="2">Select dashboard 2</option>
<option value="3">Select dashboard 3</option>
@* <option value="0">Select dashboard</option>*@
</select>
我做到了:
$("#cboDashboards").val('1'); // - 尝试 #1
这行得通,所以我的 GUID 值似乎有问题?
【问题讨论】:
-
我想我找到了问题所在。您在加载所有选项之前调用选择函数
-
那你有什么建议?
标签: javascript jquery select combobox