使用Handlebars.js helper用jQuery创建活动元素
Using Handlebars.js helpers to create active elements with jQuery?
是否可以在Handlebars.js helper中使用jQuery创建元素并将事件处理程序附加到它们?我希望能够使用帮助器创建活动元素。
的例子:
Handlebars.registerHelper("button", function(title) {
var button = $('<button>').text(title);
button.click(function() {
alert("Button " + title + " clicked.");
});
return $('<div>').append(button).html();
});
在把手模板中,我像这样实例化按钮:
{{{button "Click Me!"}}}
我明白这不能工作,因为jQuery的html()函数'删除'事件处理程序…但是简单地返回按钮显然也不起作用。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.");
};
相关文章:
- jquery创建的数据-*有时无法解析
- 如何通过解析类信息来使用jQuery创建类
- 使用JavaScript或jQuery创建序列步骤[动画]
- 使用jquery创建dom元素会导致ie9出现拒绝访问错误
- 将值传递给jquery创建的输入字段
- 使用Jquery创建一个具有单击和悬停功能的菜单
- 如何使用jquery创建列表
- 懒惰加载:如何使用jquery创建懒惰加载html页面
- 使用jQuery创建具有不同类名或ID的多个元素
- Meteor:使用Jquery创建对话框
- 如何在 css3 中创建活动按钮
- 使用 jQuery 创建可单击的行并排除子元素
- jQuery 创建多级无序列表
- 在JavaScript / jQuery中用活动超链接替换粘贴的链接
- 使用 JQuery 创建 Java 对象
- 使用jquery创建并复制一个选择框
- Jquery - 创建动态名称选择器
- 如何将从jQuery创建的数组传递给控制器方法
- 如何使用jquery创建自定义弹出窗口
- 使用Handlebars.js helper用jQuery创建活动元素