【问题标题】:<select multiple> </select> set more values with val() method in jsp page<select multiple> </select> 在jsp页面中用val()方法设置更多的值
【发布时间】:2021-05-31 05:17:27
【问题描述】:

我的 jsp 页面

<script type="application/javascript">
   <c:forEach var="bs" items="${subjectOfBookList}">
        $("#bSubjectU").val(${bs.subjects.id});
    </c:forEach>
</script>


  <select id="bSubjectU" multiple style="height: 150px">
        <option value="0">Select Subjects</option>
        <c:forEach var="sl" items="${subjectList}">
            <option value="${sl.id}">${sl.subjectName}</option>
        </c:forEach>
    </select>

${subjectOfBookList} 返回我的 servlet。我如何在 select(multiple) 元素中设置所有列表项。现在我只得到最后一个值。我检查了所有返回值,但设置了最后一个值。 谢谢!

【问题讨论】:

    标签: javascript jquery select servlets jstl


    【解决方案1】:

    您可以将来自&lt;c:forEach 的值推送到 js 数组中,然后使用该数组设置下拉列表中选择的多个值。

    演示代码

    var arrys = ["1", "2"]
    $("#bSubjectU").val(arrys);
    //uncomment to use below
    //var arr =[]
    // <c:forEach var="bs" items="${subjectOfBookList}">
    //push that value inside arr
    //arr.push("${bs.subjects.id}")
    //</c:forEach>
    //$("#bSubjectU").val(arr);
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <select id="bSubjectU" multiple style="height: 150px">
      <option value="0">Select Subjects</option>
      <option value="1">A</option>
      <option value="2">B</option>
      <option value="3">C</option>
    </select>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-11
      • 2021-03-24
      • 1970-01-01
      • 1970-01-01
      • 2011-08-11
      相关资源
      最近更新 更多