对于一个项目,我想实现一个很好的过滤机制与多个复选框。我收到复选框正常工作,以及一个jQuery函数来检查复选框时自动POST表单。选择所有复选框与jQuery形式POST多个复选框
现在我想添加复选框上方的“全选”复选框,但我似乎无法找到正确的方法。我已经尝试了十几种解决方案(有些)类似的问题,但我无法使其正确和一致地工作。
的HTML部分是这样的:
<form action="<?php $_SERVER['PHP_SELF']?>" method="post">
<input type="checkbox" /> Select All colors<br/>
<label> <input type="checkbox" name="color[]" value="yellow"> Yellow</label><br/>
<label> <input type="checkbox" name="color[]" value="blue"> Blue</label><br/>
<label> <input type="checkbox" name="color[]" value="red"> Red</label><br/>
<label> <input type="checkbox" name="color[]" value="green"> Green</label><br/><br/>
<input type="checkbox" /> Select All brands<br/>
<label> <input type="checkbox" name="brand[]" value="Nike"> Nike</label><br/>
<label> <input type="checkbox" name="brand[]" value="Adidas"> Adidas</label><br/>
<label> <input type="checkbox" name="brand[]" value="SomeBrand"> SomeBrand</label><br/>
<label> <input type="checkbox" name="brand[]" value="SomeOtherBrand"> SomeOtherBrand</label><br/>
</form>
我用它来发布关于该复选框每次点击的形式jQuery的部分(是不够的):
$('input:checkbox:').live('click',function() {
$(this).closest('form').submit();
});
我现在的问题是什么我需要的jQuery的一部分,以确保这项工作正常? 我希望能够单击标签以取消选择该组中的所有内容,并仅选中该复选框。它还需要POST数组值的形式。最后,如果手动检查所有复选框,则也必须检查“全选”。
希望有人能帮助我,因为我坚持这一长一段时间......
'活()在最新的jQuery版本被删除'。改用'.on('click',handler)'。 – 2013-04-10 17:35:44
你的'<?php $ _SERVER ['PHP_SELF']?>'动作有效吗?如果没有,请尝试'<?php echo $ _SERVER ['PHP_SELF']?>'而不是。只是说。 – 2013-04-10 17:40:28
对不起弗雷德,它有点伪代码,回声在实际的代码中。 也改变了jQuery代码来使用.on('click',handler)。 – Hugo 2013-04-10 17:42:44