如何使用jQuery切换标签样式
How to switch styles for labels using jQuery
我有一个复选框。如果复选框被选中,我想切换包含复选框的div的样式。
<label for="ids">
<div>
<img src="img/87_1180.jpg">
<h4>Name</h4>
<input name="ids" id="ids" type="checkbox">
</div>
</label>
当用户单击标签时,复选框被选中。如果复选框被选中,我想添加类。
谢谢你的帮助。
$("#ids").click(function() {
$(this).parent().toggleClass("yourClassName");
});
Josh
实际上,标签的正确用法应该是这样的:
<label for="ids">Name</label>
<input name="ids" id="ids" type="checkbox" />
我认为根据W3C标准将输入放在标签内是不常见的做法,参见:
http://www.w3.org/TR/html401/interact/forms.html edef-LABEL
虽然它可能会验证您编写代码的方式,但要特别控制样式要困难得多。
试试下面的代码来改变标签:
$("#ids").click(function() {
$('label[for="' + $(this).attr('name') + '"]').toggleClass('myClass');
});