动态生成的html的Table中第一列是checkbox,如何判断选择了哪些checkbox,并获得相对应的记录

wwbmyos 2012-03-07 10:14:10
动态生成的html的Table中第一列是checkbox,如何判断选择了哪些checkbox,并获得相对应的记录??

js代码:
function get(){
var print = document.getElementsByName("isprint");
for(var i = 0; i < print.length; i++) {
if(print[i].checked) {
var factorId = document.getElementById('factorId').value;
alert(factorId);
}
}
}

<table class="grid">
<tfoot></tfoot>
<tbody>
<tr>
<th width="30px" >序号</th>
<th>标签要素名称</th>
<th>是否起用</th>
</tr>
<s:iterator value="%{pageDataFactorDef.datals}" id='vo' status='st'>
<td align="center"><s:property value="#st.count+(pageDataFactorDef.currentPage-1) * (pageDataFactorDef.pageSize)" /></td>
<td>${vo.factorName}</td>
<td>
<input type="checkbox" name="isprint" id="isprint" />
</td>
<td align="center"> <input id="factorId" value="${vo.factorId}" type="hidden"></input> //取得隐藏域id值
</tr>
</s:iterator>
</tbody>
</table>



在js中取得的id永远是table表中的第一条记录,不管你选中几条数据,它都是显示第一条记录数据的id值。
...全文
335 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tptptp00 2012-03-07
  • 打赏
  • 举报
回复
if(print[i].checked) {
alert(print[i].parentNode.nextSibling.childNodes[0].value);

}
Rock870210 2012-03-07
  • 打赏
  • 举报
回复
<input type="checkbox" name="isprint" id="isprint" cmdValue="${vo.factorId}" />
if(print[i].checked) {
alert(print[i].getAttribute("cmdValue"));
}
wwbmyos 2012-03-07
  • 打赏
  • 举报
回复
那怎么取得被选中相对应的数据
tptptp00 2012-03-07
  • 打赏
  • 举报
回复
你所有的隐藏域的id都一样 当然取第一个
longlo3260774 2012-03-07
  • 打赏
  • 举报
回复
<input type="checkbox" name="isprint" id="isprint" />
改成
<input type="checkbox" name="isprint<%# Container.ItemIndex+1 %>" id="isprint<%# Container.ItemIndex+1 %>" />

<tbody>中加个ID

JS搜<tbody> 的行数
var rowCount = document.all.tbodyDetail.children.length - 1;
for (var i = 1; i <= rowCount; i++) {
var checkbox= form1["checkbox" + i].value.trim();
}
然后你遍历这个rowCount
你就可以拿到checkbox的id了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧