我有一个控制器设置,视图包含一个包含一些信息的表。当在jsp页面上按下提交按钮时,我想从表中的第二列获取信息,以便我可以在控制器中处理该信息。表中的行可以在2到100之间变化,因此我正在寻找能够从第2列获取值的内容,而不管行数。我想从td类urltext中提取信息。我做了我的研究,但我无法找到任何与此相关的信息,所以任何想法都将受到高度赞赏。感谢。
<table name="urlTable" id="urlList" style="width:100%; overflow: scroll;">
<tr>
<th>Select</th>
<th>URL</th>
</tr>
<c:forEach var="urlList" items="${command.urlList}">
<tr>
<td><input type="checkbox" name="chk"/></td>
<td class="urlText"><input class="urlValue" type="text" value="${urlList}" style="font-size: 13px; border: none;" size="85px;" readonly="readonly"/></td>
</tr>
</c:forEach>
</table>
答案 0 :(得分:0)
让我们开始使用我们应该使用的thead
和tbody
元素。
<table name="urlTable" id="urlList" style="width:100%; overflow: scroll;">
<thead>
<tr>
<th>Select</th>
<th>URL</th>
</tr>
</thead>
<tbody>
<c:forEach var="urlList" items="${command.urlList}">
<tr>
<td><input type="checkbox" name="chk"/></td>
<td class="urlText"><input class="urlValue" type="text" value="${urlList}" style="font-size: 13px; border: none;" size="85px;" readonly="readonly"/></td>
</tr>
</c:forEach>
</tbody>
</table>
然后只定位tbody
中每行的第二列。我假设您定位的是input
。
var inputs = $("#urlList > tbody > tr > td:nth-child(2) > input");
此时我不知道您要对输入做什么。如果需要值的数组,请执行此操作。
var vals = inputs.map(function() {
return this.value;
}).toArray();
答案 1 :(得分:0)
你可以试试这个:
var values = [];
$('#urlList .urlvalue').each(function(){
var val = $(this).val();
values.push(val);
});
数组值包含表中的所有输入值。