【发布时间】:2013-11-15 01:08:45
【问题描述】:
首先,我有一个 Button addTemplate,它将通过 Knockout 和 jQuery 将 html 添加到我的正文中:
<button data-bind="click: addTemplate">Add Template</button>
<script type="text/html" id="MyTemplate">
<div id="container">
<a href="#" data-bind="click: $root.doAlert">Do Alert</a>
</div>
</script>
添加的模板也有一些淘汰赛绑定。他们应该在我的 ViewModel 中激活警报:
function MyViewModel()
{
self = this;
self.addTemplate = function () {
$($("#MyTemplate").html()).appendTo("body");
}
self.doAlert = function() {
alert('Hello World');
}
}
ko.applyBindings(new MyViewModel());
当我点击我添加的模板中的链接时,doAlert 函数什么也不做。
我不想在我的 ViewModel 中使用字符串链接的 HTML 模板。
这里是小提琴:http://jsfiddle.net/tgu8C/5/
【问题讨论】:
-
该答案为您提供了将绑定应用到页面的特定部分所需的内容,而该特定部分在首次运行时不可用
标签: knockout.js jquery-templates