gpt4 book ai didi

javascript - 使用 Handlebars.js 助手通过 jQuery 创建事件元素?

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:37 24 4
gpt4 key购买 nike

是否可以在 Handlebars.js 帮助程序中使用 jQuery 创建元素并将事件处理程序附加到它们?我希望能够使用助手创建事件元素。

例子:

Handlebars.registerHelper("button", function(title) {
var button = $('<button>').text(title);
button.click(function() {
alert("Button " + title + " clicked.");
});
return $('<div>').append(button).html();
});

在 handlebars 模板中,我像这样实例化按钮:

{{{button "Click Me!"}}}

我知道这是行不通的,因为 jQuery 的 html() 函数“删除”了事件处理程序……但简单地返回 button 显然也行不通。Handlebars 助手应该能够返回 DOM 节点,但这是不可能的,对吧?我试图返回 button.get(),但没有成功。

有什么想法吗?

最佳答案

您可以做的是在 registerHelper 之外创建一个调用 onClick 的函数。所以它的代码看起来像这样:

Handlebars.registerHelper("button", function (text) {
var button = $('<button></button>').text(text).attr('onclick', 'button_clickEvent()');
return $('<div></div>').append(button).html();
});

var button_clickEvent = function () {
alert("Button " + $(this).text() + " clicked.");
};

关于javascript - 使用 Handlebars.js 助手通过 jQuery 创建事件元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8019810/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com