2012-05-08 21 views
0

私はどこが間違っているのか理解できません。私を助けてもらえますか? 私は 'bTest1'という2つの観測可能なデータ(1つの配列と1つの文字列)というカスタムバインディングを作成します。 適用この文字列に結合はKOでアレイ上で正常に動作しますが、ない:foreachのノックアウトforeachでカスタムバインディングを作成

ここに私のjsfiddleリンクです:Here

と私のコードは

<!-- ko foreach:test --> 
<label><input type="text" data-bind="bTest1:$root.test1,value:$data,valueUpdate:'afterkeydown'" />Test1</label><br/> 
<!-- /ko --> 
<br/> 
<label><input type="text" data-bind="bTest1:test1,value:test1,valueUpdate:'afterkeydown'" />Test2</label> 

と私のJSコード(などできるだけ簡単に):

ko.bindingHandlers.bTest1 = { 
     init: function() { 
      console.log('init Test1'); 
    }, 
    update: function() { 
      console.log('update Test1'); 
    } 
}; 


var modelView = function(){ 
    var self = this; 
    self.test = ko.observableArray(['foreach_test','foreach_test1']); 
    self.test1 = ko.observable('test_alone'); 
} 

ko.applyBindings(new modelView()); 

私は私を助けてくれてありがとう。 よろしくお願いいたします S.

+0

jsfiddle works for me – freakish

答えて

1

おはよう。

ObservableArrayは、配列自体の変更(項目の追加/削除)のみを追跡し、その項目には変更を加えません。したがって、同じ結果が必要な場合は、配列内の各項目をko.observableとしてマークする必要があります。

希望すると便利です。

関連する問題