我正在按原样在我的results.jsp中显示来自Table A
的查询结果:
<form action="InsertToTableB" method="post">
<table>
<tr>
<th>Select</th>
<th>First Name</th>
<th>Last Name</th>
<th>Email</th>
</tr>
<c:forEach var="user" items="${resultData}">
<tr>
<td><input type="checkbox" name="selected" value="<c:out value='${user.userID }' />"/></td>
<td><c:out value="${user.fName }"/></td>
<td><c:out value="${user.lName }"/></td>
<td><c:out value="${user.email }"/></td>
</tr>
</c:forEach>
</table>
<button type="submit" value="Submit">Insert to Table B</button>
<button type="submit" value="Submit">Delete from Table A</button>
</form>
这个form
被传递到我的InsertToTableB
servlet中。
如何仅从生成的表<input type="checkbox" name="selected" value="<c:out value='${user.userID }' />"/>
中获取所选值,以及
我怎么知道哪个按钮(Insert to Table B
或Delete from Table A
)被按下了?
我只使用<input type="text">
,并使用.getParameter('name')
将值放入servlet,而这些是Strings
。
checkbox
输入类型是否相同?
我可以在表单中有2个或更多具有不同功能的提交按钮吗?
一张带有示例数据的我的桌子的照片:
答案 0 :(得分:1)
您需要将name='selected'
更改为checked='checked'
所以改变
<input type="checkbox" name="selected" value="<c:out value='${user.userID }' />"/>
到
<input type="checkbox" checked="checked" value="<c:out value='${user.userID }' />"/>
要获取所有选中的checkbox
,可以使用jQuery
,如下所示:
var checkedEles = $("input:checkbox:checked");