javascript - Jquery 点击事件不会使用 Handlebars 模板触发

标签 javascript php jquery html frontend

我对 Jquery .on() 函数和 Handlebars 模板有问题。我编写了 Handlebars 模板并将其动态添加到文档中:

$('.services-wrapper').append(serviceTemplate({index : ++maxIndex}));

此模板有一个按钮:

<p>
    <?= Html::buttonInput('Delete', [
    'class' => 'btn btn-danger delete-service', 
    'id' => 'js-delete-service',
        'data' => [
        'index' => $index,
    ],
    ]) ?>
</p>

所以我在这个按钮上编写了点击处理程序:

$('.service').on('click', '.delete-service', function (e) {
    alert('Clicked');
    //$(this).parent().parent().remove();
});

当我将此模板添加到文档时,单击事件不会触发。问题是什么?

最佳答案

您可能需要一个最接近的父包装器:

$('.service-wrapper').on(...);

关于javascript - Jquery 点击事件不会使用 Handlebars 模板触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43140099/

相关文章:

javascript - 修改 SVG map 上标记的标记

javascript - 页面加载前是否有任何事件?

php - 无法创建存储过程 mysql 可能是 if else 语法

php - 基于特色图像的页面上的动态和响应式 Wordpress 图像

php - 使用 php DOMDocument 将 HTML 属性添加到 DOMElement

javascript - ReSharper 对于 JavaScript 文件非常慢

javascript - Bootstrap 模式中的 Summer Note 问题

jQuery/CSS 移动图标动画

java - 在 selenium webdriver 中执行 javascript 时发生错误

javascript - 如何在 D3.js 中垂直包装 SVG 中的文本?