1

私はkoの初心者ですが、問題の解決策を見つけることができません。バインド可能なプロパティをビューモデル階層に整理しようとしています。ドキュメントに基づくと、次のように機能するはずですが、機能しません。ヒントはありますか?

function AppViewModel() {
    this.nested = new NestedViewModel();
}

function NestedViewModel() {
    this.firstName = ko.observable();
     this.lastName = "Bertington";
}

ko.applyBindings(new AppViewModel());

ここで使用されます:

<p data-bind="with: nested">

<p>First name: <input type="text" data-bind="value: firstName, valueUpdate: afterkeydown"></input></p>
<p>Last name: <strong data-bind="text: firstName"></strong></p>

</p>
4

1 に答える 1

6

HTMLが無効です。<p>要素をネストすることはできません。したがって、ブラウザは終了タグをとして自動生成し<p data-bind="with: nested"></p>ます。

外側のラッパーをたとえばa<div>に置き換えて、HTMLを有効にし、スクリプトを機能させます。

また、(引用符を追加して)する必要がありますvalueUpdate: 'afterkeydown'。そうでない場合、ノックアウトは「afterkeydown」という名前のオブザーバブルを探します。

動作するデモは次のとおりです:http://jsfiddle.net/JwWCc/1/

于 2012-08-15T12:11:59.337 に答える