我正在尝试学习KO,当我写这个是html时,输入文本框没有加载值。有人可以提供帮助。
<html>
<head>
<script src="C:\Data\Visual Studio 2013\Projects\WebApplication3\KObasics\Scripts\knockout-3.4.2.debug.js" type="text/javascript">
</script>
<script type="text/javascript">
// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {
this.firstName = "Bert";
this.lastName = "Bertington";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
</script>
</head>
<body>
<p>Use this area to provide additional information.</p>
<input data-bind="value:firstName"/>
<p data-bind="text:firstName"></p>
</body>
</html>
答案 0 :(得分:1)
你的html和javascript看起来不错,因为它在下面工作正常。
// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {
this.firstName = "Bert";
this.lastName = "Bertington";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<p>Use this area to provide additional information.</p>
<input data-bind="value:firstName"/>
<p data-bind="text:firstName"></p>
&#13;
您只需将<script>
标记移至结束标记(<body>
)之前的</body>
元素的末尾即可。确保DOM元素在绑定到挖掘模型之前呈现。它会是这样的:
<html>
<head>
<script src="C:\Data\Visual Studio 2013\Projects\WebApplication3\KObasics\Scripts\knockout-3.4.2.debug.js" type="text/javascript">
</script>
</head>
<body>
<p>Use this area to provide additional information.</p>
<input data-bind="value:firstName"/>
<p data-bind="text:firstName"></p>
</body>
<script type="text/javascript">
// This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {
this.firstName = "Bert";
this.lastName = "Bertington";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
</script>
</html>