我有一个jquery选择框,用于为用户提供过滤页面的选项。默认值为“全部”,然后可以选择一系列选项。
当他们做出选择时,页面会重新加载他们的选择,然后我希望选择框显示他们的选择。问题是我似乎无法将selectbox值设置为先前选择的值。
selectbox的HTML如下所示:
<select id="mySelectMenu">
<option value="VALUEALL">All</option>
<option value="VALUE1">A</option>
<option value="VALUE2">B</option>
<option value="VALUE3">C</option>
</select>
他们选择的值保存在我的模型中,所以我在jspx页面的顶部有以下内容:
<c:set value="${myModel.myFilterCriteria}" var="myFilterValue" />
这是在我的document.ready
中$(function() {
$( "#mySelectMenu" ).selectBox();
// this is how I've tried to force my value to 'A' instead of 'All', but it
// didn't work.
$("#mySelectMenu option[value='VALUE1']").prop("selected", true);
// I'd like to be able to use something like this:
$("#mySelectMenu option[value='(myFilterValue)']").prop("selected", true);
});
我尝试了各种方法将其设置为'myFilterValue',但似乎无法设置它。
---发现决议---
我的功能
中存在以下问题$( "#mySelectMenu" ).selectBox();
我删除了它并添加了以下内容并且有效。
$("#mySelectMenu option[value='${myFilterValue}']").prop("selected", true);
所以,我的功能现在看起来像这样:
$(function() {
$("#mySelectMenu option[value='${myFilterValue}']").prop("selected", true);
});
谢谢大家的帮助!
答案 0 :(得分:0)
$('#mySelectMenu').val(myFilterValue); // or
$('#mySelectMenu').val("VALUE1");
答案 1 :(得分:0)
我发现以下内容: https://github.com/marcj/jquery-selectBox/blob/master/readme.md
代码:
$('select').selectBox('value', 1);