我应该对哪个事件进行更改?

时间:2011-08-09 16:18:18

标签: javascript onchange

在html表单中,我有一个带标签的复选框。单击复选框或其标签时,它会切换复选框的选中。它包含在<div>

如果选中复选框,我正在使用jquery隐藏表单的另一个元素。最初我使用了包装div的.click()功能。但是我注意到你可以点击之间的复选框和标签(仍然在div中),并让另一个隐藏,即使没有勾选复选框。 (另外,由于某种原因,点击标签会导致元素隐藏然后重新出现,但我认为我不需要打开那些蠕虫)。

我在想,而不是div的click(),我应该分别查看复选框和div。然后我想我可能会为复选框本身寻找类似onChange事件的内容,点击标签应该会影响。然后我认为人们之前可能已经解决了这个问题,我不应该试图重新发明轮子。

当两个不同的元素可以更改复选框状态时,保持我的元素的复选框值和隐藏/显示状态同步的简单方法是什么?

3 个答案:

答案 0 :(得分:2)

此复选框的onChange事件可能会很好地满足您的需求。

答案 1 :(得分:2)

onclick事件附加到复选框(onchange事件也有效)。无论是单击复选框本身还是其标签,都会触发事件处理程序。只需确保标签的for属性包含复选框的ID。

http://jsfiddle.net/FishBasketGordo/GJbce/

答案 2 :(得分:1)

尝试使用复选框输入上的.change()功能。