每行都存在该复选框。该表是由 PHP 创建的,我需要一种方法来检查该复选框是否存在。当它们被创建时,它们被赋予 checkbox_ 的 ID(一个递增的数字)。
这是我到目前为止所拥有的,但它不适用于检查元素是否存在。
var check = true;
var todelete = "";
var counter = 0;
//check if box exisits and record id and post
while(check)
{
if ($("#Checkbox_"+counter).length > 0)
{
todelete = todelete + $("#Checkbox_"+counter).value;
counter = counter + 1;
}
else
{
check = false;
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过
if ($("Checkbox_"+counter))
if (document.getElementById("tbody").value == null)
Run Code Online (Sandbox Code Playgroud)
更新:
即使使用 # 符号或者如果我通过 javascripts 元素 ID 执行此操作 - 当我调试 DOM 时,它会命中 while,然后是 if,将值添加到 todelete,将 1 添加到计数器,然后返回到 while,然后命中 if
然后弹回到 while,甚至没有进入 if 或 else???
这我不明白,那么它只是在两条线之间上下弹跳并使浏览器崩溃?
更新2:
将计数器添加到元素 id 的字符串时,我需要 .tostring() 计数器。问题解决了
您可以使用
if ($("#Checkbox_"+counter).length > 0)
Run Code Online (Sandbox Code Playgroud)
我假设“Checkbox_0”是一个 ID,因此我添加了 # 符号。如果它是复选框的名称,您可以使用
if ($("input[name='Checkbox_"+counter+"']").length > 0);
Run Code Online (Sandbox Code Playgroud)
[编辑]此外,您应该检查以确保您需要/不需要大写“C”。
您可以使用“在这种情况下存在复选框”
if ($("#Checkbox_"+counter).length > 0) {
//checkbox exists
}
Run Code Online (Sandbox Code Playgroud)