Reputation: 83
My jsp page
<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>
where ${subjectOfBookList} return my servlet. How i set all list items in select(multiple) element. Now i just get last value. I checked all values return, but set last value. Thanks!
Upvotes: 0
Views: 449
Reputation: 28522
You can push value from <c:forEach
in js array then use that array to set mutliple value selected inside your dropdown.
Demo Code :
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>
Upvotes: 1