我正在尝试编写一个车把助手来创建调用 javascript 方法的按钮。我试图用一个 jQuery 事件监听器来做到这一点,但它似乎没有工作。谁能告诉我我是否错误地编写了事件侦听器,或者它只是不能在车把助手中完成?
这是帮手:
Handlebars.registerHelper('viewBookLink', function(book) {
$(document).ready(function () {
$("#link" + book.bookId).click(function() {
myapp.book.getBook(book.bookId);
});
});
return new Handlebars.SafeString("<button class=\"btn btn-link\" id=\"link" + book.bookId + "\">" +
book.localizations.en_US.bookName + "</button>");
});
这是点击应该调用的方法:
book : {
getBook : function(bookId) {
alert("tried to get book with id: " + bookId);
}
},
(这两个都在 myapp 命名空间内。)
当我单击按钮时,该getBook
功能永远不会触发。如果必须,我将只创建带有 的按钮onClick
,但我想看看我是否可以先走事件侦听器路线。