我有一个组合框,在更改下拉列表时如何取消选中所有复选框 具有不同于所选状态的值的其他值
http://jsfiddle.net/cdkLkcdk/11/
我无法在下拉变更中保持这个条件
$(document).on('change', 'select#filterstatus', function (event) {
var value = $(this).val();
$(".Table_fluid").show();
$(".Table_fluid:not(:contains(" + value + "))").hide();
});
场景:
点击Mark All CheckBox(在顶部)并输入状态并点击删除按钮 它还显示其他ID
任何人都可以告诉我如何解决这个问题。
答案 0 :(得分:1)
只需在.find("[type=checkbox]").prop("checked", false);
之后添加.hide()
。
看到它正常工作here。
var value = $(this).val(),
selectAll = $("#selectall").prop("checked"); // select all checked?
$(".Table_fluid")
.show()
.find("[type=checkbox]")
.prop("checked", selectAll); // tick checkbox on showing
$(".Table_fluid:not(:contains(" + value + "))")
.hide()
.find("[type=checkbox]")
.prop("checked", false); // uncheck checkbox on hiding
答案 1 :(得分:0)
在具有状态值的标签(表内)中,添加以下类label-status
。
$.each($checked, function (i, e) {
var status = $(e).parent().parent().find('.label-status').text();
if ($(e).attr("id") != 'selectall' && status == $('#filterstatus').val()) {
ids.push($(e).attr("id"))
}
});
编辑:JSFiddle
答案 2 :(得分:0)
可以检查项目是否可见。
if ($(e).attr("id") != 'selectall' && $(e).is(":visible")) {
ids.push($(e).attr("id"))
}