队
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<script src='E:\Trials\ClientSide\MyTrials\knockout-2.2.1.js' type='text/javascript'></script>
<script src='E:\Trials\ClientSide\MyTrials\jquery-2.0.0.js' type='text/javascript'></script>
<title>Index</title>
<script type="text/javascript">
function PersonViewModel()
{
firstName = ko.observable("FirstN")
};
$(document).ready(function () {
var person = new PersonViewModel();
ko.applyBindings(person);
});
</script>
</head>
<body>
<div>
<h3>Details</h3>
<p>First Name: <input data-bind="value: firstName()" /></p>
<p>First Name From span: <span data-bind="text: firstName()" ></span> </p>
</div>
</body>
</html>
它非常简单和自我解释。脚本块包含一个视图模型,在doc ready函数上,绑定发生。而且html也很简单。一个输入和一个跨度绑定到可观察的相同属性firstName。 但痛苦是当我从输入中更改值时,跨度不会更新。我错过了什么? 问候 的Vivek
答案 0 :(得分:7)
将firstName()
更改为firstName
<p>First Name: <input data-bind="value: firstName" /></p>
<p>First Name From span: <span data-bind="text: firstName" ></span> </p>
答案 1 :(得分:4)
这里有两个问题。
您的PersonViewModel稍有不妥。你忘了放置这个。&#39;在firstName属性的前面。像这样修复它:
function PersonViewModel()
{
this.firstName = ko.observable("FirstN");
};