kat*_*aik 1 javascript knockout.js
我是ko的新手,但找不到我的问题的解决方案.我尝试将可绑定属性组织到视图模型层次结构中.根据文档,在我看来,以下应该有效,但事实并非如此.你有什么提示吗?
function AppViewModel() {
this.nested = new NestedViewModel();
}
function NestedViewModel() {
this.firstName = ko.observable();
this.lastName = "Bertington";
}
ko.applyBindings(new AppViewModel());
Run Code Online (Sandbox Code Playgroud)
并在这里使用:
<p data-bind="with: nested">
<p>First name: <input type="text" data-bind="value: firstName, valueUpdate: afterkeydown"></input></p>
<p>Last name: <strong data-bind="text: firstName"></strong></p>
</p>
Run Code Online (Sandbox Code Playgroud)
您的HTML无效.你不能嵌套<p>元素.因此,浏览器会自动生成结束标记<p data-bind="with: nested"></p>.
用例如a替换外包装<div>以使HTML有效并且脚本有效.
此外,它需要valueUpdate: 'afterkeydown'(添加引号),否则knockout会查找名为"afterkeydown"的可观察对象.
这是一个工作演示:http://jsfiddle.net/JwWCc/1/