-1

我正在使用 EditableGrid 对 HTML 表进行排序。该表是通过 MVC 控制器(作为字符串)生成的,并具有 id(#htmlgrid)。表格显示正确。我知道如何获得行数和列数,但我不知道如何找到复选框的值。我使用 JavaScript 函数来获取这些值。在(Google Chrome)调试器中,我找不到复选框的值。我的表如下所示:

<tr>
  <th style="border:2px solid grey">selected</th>
  <th style="border:2px solid grey">id</th>
  <th style="border:2px solid grey">name</th>
</tr>

在我的函数中,我使用这些来获取行数和项目数组。

var length = document.getElementById(tableId).rows.length;
var container = document.getElementById(tableId).rows;

如您所见,第一列是复选框所在的位置。此外,每个复选框都有一个 id,如下所示:

<td id="checkbox0">false</td>

如何访问值“false”(在这种情况下)?我试图通过document.getElementById("checkbox0").checked并且如果我为表设置一个变量来访问这个值,比如:

var container = document.getElementById(tableId);//html table
container[2].children[0];//table row 2, column 0

我确实得到了很多属性,但我无法清楚地看到是否被选中。

4

3 回答 3

0

好吧,我感到很愚蠢,我应该感到很愚蠢。答案很简单……为了初始化一个表(使用可编辑网格),我创建了一个全局 JavaScript 对象。我只需要在我的代码中这样做:

var value = editableGrid.getCell(row, column).firstChild.checked;

目前尚不清楚为什么开发人员选择这样做,但这就是我获得正确价值观的方式。仍然非常感谢大家花时间阅读并尝试解决它。

于 2016-09-26T08:04:34.310 回答
0

您可以通过以下方式获取复选框的状态:

$('#checkbox0').is(":checked");

返回真或假。

要选择所有选中的复选框,您可以检查

$('input[type="checkbox"]:checked')

希望这可以帮助

于 2016-09-25T21:22:11.203 回答
0

怎么样document.getElementById("checkbox0").innerHTML?这只是为了获取您的标签之间的 innerHTML td。我很困惑,因为你问的是复选框值,但我没有看到任何input type="checkbox"(或类似的东西)

(它应该在评论中。但是由于我无法发表评论,我想我只能选择放在这里)

于 2016-09-25T18:00:53.527 回答