我如何将变量从.on()事件传递给回调函数?

时间:2017-08-03 17:46:17

标签: javascript jquery

我使用javascript动态地将按钮插入到文档中,我希望按钮可以点击并获取每个按钮的值并将其导出到conosle.log中。现在我可以点击按钮了,但是我无法弄清楚如何将按钮值从.on()传递给函数,任何建议?

HTML

<button id="testTagButton" class="yt-chip" title="test button please ignore"><span>test button please ignore</span></button>

的javascript

$(document).on('click','#testTagButton',tagInsert);


function tagInsert(){
    console.log("Button Value should go here");
}

我必须使用.on()afaik,因为我使用append将按钮插入文档

3 个答案:

答案 0 :(得分:3)

只需参考上下文(又名):

function tagInsert(){
  console.log(
    this.id, //a regular DOM prop
    this.title, 
    $(this).text() //or utilizing jquery again
    //or whatever
   );
}

答案 1 :(得分:1)

不确定您要查找的是哪个值,但是$(this).id或$(this).text会这样做

答案 2 :(得分:0)

您可以使用data-$.data()

$(document).ready(function() {
  $("#test").on("click", function(e) {
    console.log($(this).data("test"));
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button data-test="123" id="test">
Test
</button>