javascript - 如何对动态生成的按钮点击使用react?

标签 javascript html jquery jquery-events

我使用以下代码添加按钮:

$('.dishes').prepend($('<div class="row" data-dishid="'+dishid+'"><div class="col-md-8">'+dishname+'<button type="button" class="close" aria-label="Close"><span aria-hidden="true">&times;</span></button></div></div>'));

但是以下代码无法捕获按钮单击(如果它是静态 html 的一部分,则当它使用相同的代码时):

$("button.close").click(function() {
      var row = $(this).closest('.row');
      var dishid = row.attr('data-dishid');      
});

我该如何解决这个问题?

参见the sample code .

最佳答案

您需要event delegation用于动态生成的元素。尝试如下。

$(document).on('click', "button.close", function () {
    var row = $(this).closest('.row');
    var dishid = row.attr('data-dishid');
    console.log(dishid);
});

<强> WORKING DEMO

关于javascript - 如何对动态生成的按钮点击使用react?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36365765/

相关文章:

javascript - 不显示 Angular 指令的包装器

javascript - 在 JavaScript 中应用 CSS

javascript - React setState 在变量初始化之前保持运行

javascript - React/Javascript 乱序代码执行

javascript - 将函数参数作为字符串在函数本身中使用时遇到问题

html - jQuery Mobile Phonegap iOS : Header flickers when I pull up keyboard

html - 我如何删除白色间距?

javascript - 带有搜索按钮的jquery下拉框

javascript - 使用 JS/jQuery 检查 URL 中的 GET 变量?

javascript - ES6 中的函数参数定义