【问题标题】:Setting the value of a JQuery SelectBox to the variable from a Model将 JQuery SelectBox 的值设置为模型中的变量
【发布时间】:2014-12-14 08:28:11
【问题描述】:

我有一个 jquery 选择框,用于为用户提供过滤页面的选项。默认值为“全部”,然后他们可以选择一系列选项。

当他们做出选择时,页面会重新加载他们的选择,然后我希望选择框显示他们的选择。问题是我似乎无法将选择框值设置为先前选择的值。

选择框的 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" />

这是在我的文档中。准备好了

$(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);
});

感谢大家的帮助!

【问题讨论】:

  • 如何将 myFilterValue 保存在隐藏字段中并使用 jquery 检索它。?
  • @RajaprabhuAravindasamy 我对其中的一些还是有点陌生​​,所以我如何将 myFilterValue 保存在隐藏字段中并使用 jquery 检索它?

标签: javascript jquery drop-down-menu


【解决方案1】:
$('#mySelectMenu').val(myFilterValue); // or
$('#mySelectMenu').val("VALUE1");

jsFiddle Demo works

【讨论】:

  • 我只是尝试了这两种方法,但没有成功。下拉列表中的值仍然是“全部”。我什至修改了标签以显示 myFilterValue 以确保它具有正确的值并且确实如此。
  • 您是否尝试在带有此下拉菜单的页面上在控制台中输入其中任何一个?
【解决方案2】:

我发现以下内容: https://github.com/marcj/jquery-selectBox/blob/master/readme.md

代码:

 $('select').selectBox('value', 1);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-26
    • 1970-01-01
    • 2017-07-26
    • 1970-01-01
    • 2020-10-28
    相关资源
    最近更新 更多