1

我注意到 Knockout.js 可观察绑定在 Chrome/Firefox/Safari 与 Internet Explorer 9 中的工作方式之间存在差异。

我已经在 jsfiddle http://jsfiddle.net/rniemeyer/LkqTU/http://knockoutjs.com/examples/helloWorld.html的 Knockout.js 网站上尝试过这个。

在 Internet Explorer 9 中,我必须离开字段才能看到更改,但在 Chrome/Firefox/Safari 中,我只需按 Enter 即可查看更改。

这是它假设的方式还是某处存在错误?我希望它就像在 Chrome/Firefox/Safari 中一样。

4

1 回答 1

5

对于在 IE 中键入时显示的计算值,就像在 Chrome / Safari / FF 中一样,您需要将 data-bind 的 valueUpdate 属性绑定到 afterkeydown,如下所示:

<div class='liveExample'>   
  <p>First name: <input data-bind="value: firstName, valueUpdate: 'afterkeydown'" /></p> 
  <p>Last name: <input data-bind="value: lastName, valueUpdate: 'afterkeydown'" /></p> 
  <h2>Hello, <span data-bind='text: fullName'> </span>!</h2>  
</div>
于 2012-08-22T19:15:50.563 回答