如何获取点击事件的来源

时间:2017-01-23 16:37:11

标签: javascript jquery html javascript-events

使用jQuery,我在一个div中生成一些按钮。

一个按钮如下所示:

<button type="button" value="A_DIFFERENT_VALUE_EACH_TIME" class="col-md-4 text-center btn btn-default btn-lg" >
  <h3>A_DIFFERENT_TEXT_EACH_TIME</h3>
</button>

我喜欢其中的10个,在一个单独的div中。我需要的是一个事件处理程序,它为我提供了点击按钮的value

到目前为止,我已完成以下工作:

$("#card-subcontainer button").click(function(event){handleCardChoosed(event.target);})

但它不起作用,因为event.target可能是h3button。我怎样才能始终获得我们注册点击事件的元素(而不是目前那个确实获得焦点的人?

1 个答案:

答案 0 :(得分:3)

您的绑定位于按钮$("#card-subcontainer button")上,因此this上下文应该是对点击按钮的引用。

&#13;
&#13;
$("#card-subcontainer button").click(function() {
  console.log(this); // this is the reference to the clicked button element
  console.log(this.value); // use this to access the value of the button
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="card-subcontainer">
  <button type="button" value="1" class="col-md-4 text-center btn btn-default btn-lg">
    <h3>1st</h3>
  </button>
  <button type="button" value="2" class="col-md-4 text-center btn btn-default btn-lg">
    <h3>2nd</h3>
  </button>
  <button type="button" value="3" class="col-md-4 text-center btn btn-default btn-lg">
    <h3>3rd</h3>
  </button>
  <button type="button" value="4" class="col-md-4 text-center btn btn-default btn-lg">
    <h3>4th</h3>
  </button>
</div>
&#13;
&#13;
&#13;

相关问题