Не выводятся данные на JSP-страницу в checkbox value из БД
При попытке вывода данных из БД в checkbox на JSP-страничку вот в таком виде:
Roles:
<c:forEach var="role" items="${roleList}">
<div class="roleInputId">
<input type="checkbox" name="rolesId" value="${role.idRole}"/>
</div>
<input type="checkbox" name="rolesName" value="${role.nameOfRole}"/>
</c:forEach>
Данные не выводятся в checkbox, но если вид такой:
Roles:
<c:forEach var="role" items="${roleList}">
<div class="roleInputId">
<input type="checkbox" name="rolesId" value="${role.idRole}"/><c:out value="${role.idRole}"/>
</div>
<input type="checkbox" name="rolesName" value="${role.nameOfRole}"/><c:out value="${role.nameOfRole}"/>
</c:forEach>
Данные есть. Но суть в том, что вывод должен быть именно в value, чтобы эти значения можно было потом забрать. Подскажите, как можно исправить данную проблему?
Ответы (1 шт):
Автор решения: Aziz Umarov
→ Ссылка
Постараюсь ответить вам.
Вам необходимо сгенерировать label для каждого checkbox. Поскольку checkbox сам по себе только квадратик на который можно поставить галочку.
function getValues(){
console.log([...$('.roleInputId>input:checked')].map(item=>$(item).val()));
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="roleInputId">
<input id="rolesId_1" type="checkbox" value="value_1"/><label for="rolesId_1">Some Text 1</label>
<input id="rolesId_2" type="checkbox" value="value_2"/><label for="rolesId_2">Some Text 2</label>
<input id="rolesId_3" type="checkbox" value="value_3"/><label for="rolesId_3">Some Text 2</label>
</div>
<button onclick="getValues()">get values</button>