我从这个视频中输入代码示例:http: //channel9.msdn.com/Events/MIX/MIX11/FRM08
但这是行不通的。错字或其他错误在哪里?我的源代码副本可在http://jsfiddle.net/fFedK/
HTML:
<span data-bind="text:firstName"></span><br /><br />
<input data-bind="value:firstName, valueUpdate: 'afterkeydown'" /><br /><br />
<span data-bind="text:lastName"></span><br /><br /><br />
<input data-bind="value:lastName, valueUpdate: 'afterkeydown'" /><br /><br />
<span data-bind="text:fullName"></span><br /><br />
<h2>Friends</h2>
<div data-bind="template: 'friendsTemplate'"></div>
<script id="friendsTemplate" type="text/html">
<ul>
{{each(index, friend) friends}}
<li> ${ friend.name } </li>
{{/each}}
</ul>
</script>
脚本代码:
function friend(name) {
return {
name: ko.observable(name)
}
}
var viewModel = {
firstName : ko.observable("Mike"),
lastName : ko.observable("Rassel"),
friends : ko.observableArray([new friend("Steve"), new friend("Annie")])
}
//viewModel.fullName = ko.computed(function () { return this.firstName() + " " + this.lastName(); }, viewModel);
ko.applyBindings(viewModel);