Jquery 与此查找功能组合时,复选框不接受输入
这些复选框在与下面的功能组合时停止接受任何输入。我在这里贴了一张小提琴来演示这个问题: HTMLJquery 与此查找功能组合时,复选框不接受输入,jquery,checkbox,find,Jquery,Checkbox,Find,这些复选框在与下面的功能组合时停止接受任何输入。我在这里贴了一张小提琴来演示这个问题: HTML 如果您删除单击处理程序中的return false,复选框将做出响应。您是否尝试删除return false并根据情况适当返回?@SrinivasR-删除return false修复了它:-)顺便说一句-我不确定您所说的“return property”是什么意思-这是我不熟悉的设置吗用?这就解决了它:-D我可以完全放弃它,还是需要用其他东西来替换它?我不确定它是否相关,但我将同时按其他几个数据属性
如果您删除单击处理程序中的
return false
,复选框将做出响应。您是否尝试删除return false
并根据情况适当返回?@SrinivasR-删除return false修复了它:-)顺便说一句-我不确定您所说的“return property”是什么意思-这是我不熟悉的设置吗用?这就解决了它:-D我可以完全放弃它,还是需要用其他东西来替换它?我不确定它是否相关,但我将同时按其他几个数据属性进行筛选。除非您特别希望在特定情况下阻止默认操作,否则您不需要在单击处理程序中返回值。
<ul id="attributes-Colors">
<li><input type=checkbox name="color[]" value="Blue" data-color="Blue">Blue</li>
<li><input type=checkbox name="color[]" value="Red" data-color="Red">Red</li>
<li><input type=checkbox name="color[]" value="Black" data-color="Black">Black</li>
</ul>
$(document).ready(function () {
var selected = [];
$('#attributes-Colors *').click(function () {
var attrColor = $(this).data('color');
var $this = $(this);
if ($this.parent().hasClass("active")) {
$this.parent().removeClass("active");
selected.splice(selected.indexOf(attrColor),1);
}
else {
$this.parent().addClass("active");
selected.push(attrColor);
}
$("#content").find("*").hide();
$.each(selected, function(index,item) {
$('#content').find('[data-color ~="' + item + '"]').show();
});
return false;
});
});