在下面的代码中,删除复选框并再次添加后。对于“找不到复选框”,警告始终为真
<div id="r_n">
<div name="r_t"><input type="checkbox" name="r_name" />Name</div>
<div name="r_t"><input type="checkbox" name="r_name" />Address</div>
<div name="r_t"><input type="checkbox" name="r_name" />Value</div>
<div name="r_t"><input type="checkbox" name="r_name" />Total</div>
</div>
<script>
$("r_t").remove();
$("r_n").html('');
现在所有复选框都从dom
中删除$("r_n").append('<div name="r_t"><input type="checkbox" name="r_name" />Name</div>
<div name="r_t"><input type="checkbox" name="r_name" />Address</div>
<div name="r_t"><input type="checkbox" name="r_name" />Value</div>
<div name="r_t"><input type="checkbox" name="r_name" />Total</div>');
if($("r_n :checkbox").length > 0) {
{
alert("Could not find checkboxes")
}
else
{
alert("Found");
}
答案 0 :(得分:4)
$("r_t").remove();
应为$("div[name=r_t]").remove();
$("r_n").html('');
应为$("#r_n").html('');
$("r_n").append
应为$("#r_n").append
和
$("r_n :checkbox").length
应为$("#r_n :checkbox").length
最后,您在{
..之后还有一个if
它是否适用于这些变化?
<强>更新强>
最后你的逻辑错了..
你说如果长度是&gt; 那么0(表示它找到至少一个复选框)然后显示“找不到复选框”,但它应该真的如果长度为 == 0(长度为0表示未找到复选框)