2011-11-10 7 views
0

ko 1.3ベータ版では、コンテキストメニューからファイルの値を切り取ったり貼り付けたりすると、バインディングはView Modelへの更新をトリガーしません。私はすべてのvalueUpdateオプションを試しました。Knockoutjs 1.3 beta:マウスで値を貼り付けたときにvalueUpdateが機能しない

これは他のバージョンでも完全に機能します。この問題を解決する方法はありますか?

答えて

1

オリジナルの1.3ベータ版になっていない1.2.1の修正がありました。この修正は、valueバインディングが常にvalueUpdateによって渡される他のイベントと共に入力の変更イベントを処理することを確認することでした。

https://github.com/SteveSanderson/knockout/tree/master/build/outputから最新のバージョンを使用する場合は、必要な修正があります。

これにより、フィールドを離れたときに値が更新されるようになります。あなたは確かにちょうどafterpasteに結合することができるが、これはあなたが実際の配列を渡す方法を示し

<input data-bind="value: name, valueUpdate: ['afterkeydown', 'afterpaste']" /> 

:あなたは本当にそれがすぐにペーストした後に更新する場合は

しかし、あなたのような何かを行うことができますイベントはvalueUpdateになります。イベントの配列を受け入れることは、欠けていた修正の一部でもありました。

+0

「アフターペースト」のようにKO 2.0に入ったことはありませんか? –

+0

これを修正したのは、常にchangeイベントに応答することでした。現在、 'afterpaste'(または' input'または両方)を処理したい場合は、それを 'valueUpdate'追加バインディングに渡された配列に含める必要があります。 –

+0

私は「アフターペースト」を全く手に入れることができませんでした。 –

1

afterpasteイベントはノックアウトには決して出てこなかったようですが、いくつかのブラウザでサポートされている別のイベントがあります:input

<input data-bind="value: name, valueUpdate: 'input'"> 

これは最近のWebKitブラウザYMMVでうまくいきます。

関連する問題