找出是否选中了复选框

时间:2016-09-25 17:55:04

标签: javascript html editablegrid

我正在使用EditableGrid来排序HTML表。该表是通过MVC-Controller(作为字符串)生成的,并具有id(#htmlgrid)。表格显示正确。我知道如何获得rowcount和columncount,但我不知道如何找到复选框的值。我使用JavaScript函数来获取这些值。在(谷歌浏览器)调试器中,我找不到复选框的值。 我的表看起来像这样:

<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>

在我的函数中,我使用它们来获取rowcount和一个项目数组。

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

如您所见,第一列是checkedbox所在的位置。每个复选框都有一个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

我确实获得了许多属性,但我无法清楚地看到任何属性。

3 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

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

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

返回true或false。

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

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

希望这会有所帮助

答案 2 :(得分:0)

我感到愚蠢,我应该感到愚蠢。答案很简单......初始化一个表(使用editablegrid),我创建了一个全局JavaScript对象。我只需要在我的代码中执行此操作:

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

目前还不清楚,为什么开发者选择这样做,但这就是我如何得到正确的价值观。仍然非常感谢大家花时间阅读并试图解决它。