知道为什么knockoutjs会删除页面中的所有html内容吗?

时间:2014-08-23 21:17:30

标签: javascript jquery html knockout.js

我在测试淘汰赛时遇到了一些问题。我将在已经拥有DOM的页面中使用knockout。基本上只是添加多个视图模型来管理字段集作为具有Observable属性的JS对象。

我有一些问题只是加载一个简单的淘汰赛测试而不擦除页面上的其余html内容。这看起来并不正常。我想知道是否有人能用这个jsfiddle

指出问题

HTML:

<span>Why does it remove everything after input1?</span>
<input id="input1" data-bind="value: personName" /><span id="span1" data-bind="text: personName" />
<br />
<span>why?</span>
<input id="input2" type="text" value="2" /><span id="span2" />
<br />
<input id="input3" type="text" value="3" /><span id="span3" />
<span>why are you removing my fields?</span>

使用Javascript:

function myViewModel() {
var self = this;

self.personName = ko.observable('Bob');
//self.personAge = ko.observable(123);
}

ko.applyBindings(new myViewModel());

谢谢, 维克多

1 个答案:

答案 0 :(得分:3)

如果您关闭span标记,请执行以下操作:

<span id="span1" data-bind="text: personName"></span>

而不是:

<span id="span1" data-bind="text: personName" />

这是工作。

但我不知道为什么,也许一个span元素不能像这样关闭。