2011-12-24 14 views
1

何が間違っていますか?私は単純なマスターの詳細ビューを '標準MVVM'の例で作成しようとしています。 http://jsfiddle.net/UJYXg/2/ノックアウトのマスター詳細JS

私はテキストボックスで選択された「アイテム」の名前を見ることが期待されるが、代わりに、それは「観測可能」と言っ:

ここでは動作しませんJSfiddleでの単純化した例ですか?

var list = [ { name: "item 1"} , { name: "Item 2" }]; 

var viewModel = { 
    items : ko.observableArray(list), 
    selectedItem : ko.observable(), 
} 

viewModel.setItem = function(item) { 
    viewModel.selectedItem(item); 
} 

ko.applyBindings(viewModel); 

そしてHTML

<ul data-bind="foreach: items"> 
    <li> 
     <button data-bind="click: $root.setItem, text:name"></button> 
    </li> 
</ul> 

<p> 
    <input data-bind="value:selectedItem.name" /> 
</p> 

答えて

3

あなたは本当に近いです:

は、ここに私の問題のあるコードです。 value: selectedItem().name以上を実行して、withバインディングを使用してスコープを変更してください。また、参照しているスクリプトは古くなっています(2.0クリックで最初の引数としてデータが渡されます)。

ここにサンプル:http://jsfiddle.net/rniemeyer/acUDH/

関連する問題