Jquery选择器帮助

时间:2010-09-23 12:36:46

标签: javascript jquery

我有以下内容:

<form id="my_form">
  <input type="checkbox" name="a" value="a"> Check <img src="..." />
</form>

要处理检查并取消选中我所做的事件(这样可行):

$('#my_form :checkbox).click(function() {
   if($(this).is(':checked')) {
      //...
   }
   //...
});

我的问题是:在点击功能内部,如何选中复选框旁边的<img>标记?我可以在不指定图像ID的情况下执行此操作吗? ..by“select”我的意思是我需要能够隐藏()并显示()它。感谢

1 个答案:

答案 0 :(得分:1)

您可以使用.next(),因为它是下一个(立即下一个,这很重要)兄弟元素,如下所示:

$('#my_form :checkbox').click(function() {
   if(this.checked) {
      var img = $(this).next('img');
   }
});

我认为你最终使用.toggle(bool)最容易完成的事情,就像这样:

$('#my_form :checkbox').change(function() {
   $(this).next('img').toggle(this.checked);
});

这将在选中时显示<img>,并在不显示时隐藏它。请注意,我在这里使用.change(),因为这是您在处理复选框时通常需要的事件,以便始终获得正确的状态。

相关问题