gpt4 book ai didi

javascript - 如何使用 JQuery 循环遍历同一行中的表格单元格

转载 作者:行者123 更新时间:2023-11-28 19:53:45 24 4
gpt4 key购买 nike

我有这张表,它总是只有一行:

<table id="contractCoverablesGrid" width="600" align="center">
<tbody>
<tr>
@foreach (var coverableItem in Model.ContractCoverablesList)
{
<td>
<div id="dataListItem">
@Html.Hidden("coverableID", coverableItem.CoverID)
@Html.Label(coverableItem.Name)
@Html.CheckBox("coverableItemCheckBox", coverableItem.IsApplied)
</div>
</td>
}
</tr>
</tbody>
</table>

我希望能够循环遍历每个单元格,查明是否选中了该复选框,然后捕获该单元格中的 ID,就像您看到的隐藏字段一样。

我尝试过这样做,但问题是当它到达 if 子句时;它没有检测到复选框:

//Coverable Items
var count = 0;
var allCoverableItems = [];
$("#contractCoverablesGrid tbody tr td").each(function () {
var cell = $(this);

var coverableItem = {};

if (cell.find('td input[type="checkbox"]').is(':checked')) { // Here, it doesn't detect checked boxes!!
var coverableId = cell.find("input[name='coverableID']")[count].value;

coverableItem["CoverID"] = coverableId;
allCoverableItems.push(coverableItem);
}
count++;
});

我想知道这里出了什么问题 - 我对 JQuery/Javascript 有点陌生。

非常感谢。

编辑

这是工作代码:

//Coverable Items
var allCoverableItems = [];
$("#contractCoverablesGrid tbody tr td").each(function () {
var cell = $(this);

var coverableItem = {};

if (cell.find('input[type="checkbox"]').is(':checked')) {
var coverableId = cell.find("input[name='coverableID']").val();

coverableItem["CoverID"] = coverableId;
allCoverableItems.push(coverableItem);
}
});

我删除了计数并遵循下面的答案,加上;我使用 val() 而不是 value;

最佳答案

问题出在你的选择器上。您正在 cell 内搜索 td,但 cell 已经是一个 td。将其更改为:

cell.find('input[type="checkbox"]')

当您尝试通过 [count] 访问隐藏字段时,下一行也会遇到问题。看起来当您开始编写此代码时,您打算对行进行操作,但在某些时候选择了迭代单元格。下一行应该是:

var coverableId = cell.find("input[name='coverableID']").val();

关于javascript - 如何使用 JQuery 循环遍历同一行中的表格单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22968062/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com