0

我有,

<div>
  <span>Buttons</span>
    <div>
      <button id ="button_1" class="button">Btn 1</button><br />
      <button id ="button_1" class="button">Btn 2</button><br />
      <button id ="button_3" class="button">Btn 3</button><br />
      <button id ="button_4" class="button">Btn 4</button><br />
    </div>
  <span>Checkboxes</span>
  <div>
    <input type="checkbox" /> Chbx 1<br />
    <input type="checkbox" /> Chbx 2 <br />
    <input type="checkbox" /> Chbx 3 <br />
  </div>
</div>

如何确定单击了哪个按钮/复选框?我可以为每个按钮附加一个单击事件,但我正在寻找您可能拥有的任何更有效的方法/技巧。

4

1 回答 1

3

您可以单击所有按钮和输入并检查tagNameID

$(document).on('click', 'input, button', function(event) {
    alert(this.tagName + '#' + this.id);     
});

注意:您可以仅将事件附加到document元素并检查event.target以实现相同的效果,但上述方法更有效,因为回调将仅针对输入和按钮触发,而不是针对所有元素。

见演示:http: //jsfiddle.net/vCjn9/

于 2013-01-22T17:08:40.020 回答