首先,我检查了所有新手的错误。根据Firebug,该元素没有设置类属性,直到调用addClass,然后class属性设置为“”。
Javacript:
$("#filter_banned").change(function(){
if ($("#filter_banned").is(":checked")) $("#admin-userList").addClass("appliedFilter_banned");
$("#admin-userList").removeClass("appliedFilter_banned");
})
调用addclass,然后将其包装在alert(e.length)警报1中,这样我就知道它不仅会找到admin-userList,还会调用if thingy。
此外,#admin-userList是<ul>
标记。
现在这是我的CSS:
.appliedFilter_banned .user.banned { display: none; }
应该只是一个显示所有网站用户的列表,以及一个隐藏任何被禁止用户的复选框。
答案 0 :(得分:3)
我可能会遗漏某些内容,但看起来您正在添加类"appliedFilter_banned"
,然后立即删除它。你错过了else
吗?
答案 1 :(得分:3)
注意,你应该正确写出IF:
$("#filter_banned").change(function(){
var ul = $("#admin-userList");
if ( $(this).is(":checked") ) {
ul.addClass("appliedFilter_banned");
} else {
ul.removeClass("appliedFilter_banned");
}
})
答案 2 :(得分:2)
我可能在这里读错了,但不是这一行:
$("#admin-userList").removeClass("appliedFilter_banned");
直接删除你想要的课程?
答案 3 :(得分:0)
使用click事件处理程序而不是更改。
答案 4 :(得分:0)
请尝试:
$("#filter_banned").change(function(){
$("#filter_banned").is(':checked') ? $("#admin-userList").hide(): $("#admin-userList").show();
})