同时在标签AND和复选框上绑定JavaScript jQuery点击事件

时间:2012-02-08 15:34:41

标签: javascript jquery html checkbox label

我正在为我的表单使用标签,如下所示:

<label for="foo" id="bar">Label</label>
<input type="checkbox" id="foo" />

我希望在用户取消选中该框时隐藏元素,否则显示该元素。

问题是,如果我将click事件绑定到“foo”,它将仅在用户单击复选框本身而不是标签上时才起作用。因此,我是否还需要在标签上绑定click事件?或者我应该将两个元素都包含在一个范围内? 我的HTML已包含2344个元素,所以我想在不添加任何内容的情况下执行此操作,并且如果可能的话,不要将JavaScript代码或选择器加倍。

2 个答案:

答案 0 :(得分:14)

您应该使用click()事件绑定而不是与change()事件绑定,然后触发此更改,结果将是相同的:

$('#foo').change(
    function(){
        // do whatever
    });

参考文献:

答案 1 :(得分:3)

input事件应触发label是否点击了input$("#foo").change(function () { ... });

{{1}}

示例 change