1

Chrome/Firefox/Safari と Internet Explorer 9 での Knockout.js オブザーバブル バインディングの動作の違いに気付きました。

私は jsfiddle http://jsfiddle.net/rniemeyer/LkqTU/http://knockoutjs.com/examples/helloWorld.htmlの Knockout.js Web の両方でこれを試しました。

Internet Explorer 9 では変更を確認するためにフィールドを離れる必要がありますが、Chrome/Firefox/Safari では Enter キーを押すだけで変更を確認できます。

これは想定どおりですか、それともどこかにバグがありますか? Chrome/Firefox/Safariのようになりたいです。

4

1 に答える 1

5

Chrome / Safari / FF のように、IE で入力したときに計算された値が表示されるようにするには、次のように、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 に答える