<select multiple> </select> 在jsp页面中用val()方法设置更多的值
Posted
技术标签:
【中文标题】<select multiple> </select> 在jsp页面中用val()方法设置更多的值【英文标题】:<select multiple> </select> set more values with val() method in jsp page 【发布时间】: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) 元素中设置所有列表项。现在我只得到最后一个值。我检查了所有返回值,但设置了最后一个值。 谢谢!
【问题讨论】:
【参考方案1】:您可以将来自<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>
【讨论】:
以上是关于<select multiple> </select> 在jsp页面中用val()方法设置更多的值的主要内容,如果未能解决你的问题,请参考以下文章
Django:使用 <select multiple> 和 POST
Django:使用 <select multiple> 和 POST
<select multiple> </select> 在jsp页面中用val()方法设置更多的值
获取多选下拉框(select标签设置multiple属性)的值