在jquery中删除和显示行时出现问题
我的代码中再次隐藏和显示行时出现问题,但它不起作用。当我对第二个循环的代码进行注释时,它工作得非常好,但当我添加第二个循环时,又会出现问题。这是我的密码在jquery中删除和显示行时出现问题,jquery,Jquery,我的代码中再次隐藏和显示行时出现问题,但它不起作用。当我对第二个循环的代码进行注释时,它工作得非常好,但当我添加第二个循环时,又会出现问题。这是我的密码 <script> $("#btnClick").click(function(){ $("form input[type=checkbox]:not(:checked)").each( function(){ var checkBoxID = $(this
<script>
$("#btnClick").click(function(){
$("form input[type=checkbox]:not(:checked)").each(
function(){
var checkBoxID = $(this).attr('id');
//alert("checkBoxID"+" "+checkBoxID);
$("table td").each(function(){
if(checkBoxID==$(this).attr('id')){
//alert($(this).attr('id'));
$(this).hide();
}
});
});
$("form input[type=checkbox][checked]").each(
function(){
var checkBoxID = $(this).attr('id');
//alert("checkBoxID"+" "+checkBoxID);
$("table td").each(function(){
if(checkBoxID==$(this).attr('id')){
//alert($(this).attr('id'));
$(this).show();
}
});
});
});
</script>
$(“#btnClick”)。单击(函数(){
$(“表单输入[类型=复选框]:未(:选中)”)。每个(
函数(){
var checkBoxID=$(this.attr('id');
//警报(“checkBoxID”+“”+checkBoxID);
$(“表td”)。每个(函数(){
if(checkBoxID==$(this).attr('id')){
//警报($(this.attr('id'));
$(this.hide();
}
});
});
$(“表单输入[type=checkbox][checked]”)。每个(
函数(){
var checkBoxID=$(this.attr('id');
//警报(“checkBoxID”+“”+checkBoxID);
$(“表td”)。每个(函数(){
if(checkBoxID==$(this).attr('id')){
//警报($(this.attr('id'));
$(this.show();
}
});
});
});
提前感谢。实际发生的事情是在$.each循环中,当您引用$(此)时,它实际上在检查td,因为您使用的是$(“表td”) 实际上。。。第二次查看时,似乎您可能使用了相同的ID作为复选框,而td用于隐藏复选框 问题:将每个函数的初始值替换为:
$("form input[type=checkbox]").not(":checked").each(//..
替换这个
$()表格
输入[类型=复选框][选中]”)。每个(
与
$()表格
输入[类型=复选框]:选中“)。每个(
您可以分别使用较短的定义:$('form:checkbox:not(:checked')和jQuery('form:checkbox:checked'),而不是$('form input[type=checkbox]:not(:checked)])和$('form input[type=checkbox][checked])。@CoolEsh…感谢它起作用了。:)感谢Phelios它起作用了:)。对不起,迟了答复。你能告诉我两行之间的区别吗。
[checked]
vs:checked
:checked在jquery中是一个单词,所以[checked]实际上是无效的。[]用于属性搜索。
$("#btnClick").click( function(){
$("form input[type=checkbox]:not(:checked)").each( function(){
var checkBoxID = $(this).attr('id');
//alert("checkBoxID"+" "+checkBoxID);
$("table td").each(function(){
if(checkBoxID==$(this).attr('id')){
//alert($(this).attr('id'));
$(this).hide();
}
});
});
$("form input[type=checkbox][checked]").each( function(){
var checkBoxID = $(this).attr('id');
//alert("checkBoxID"+" "+checkBoxID);
$("table td").each(function(){
if(checkBoxID==$(this).attr('id')){
//alert($(this).attr('id'));
$(this).show();
}
});
});
});