2012-03-07 40 views
14

ait metin kutusu değerinin ViewModel onChange Güncellenmesi Ben KnockoutJS için oldukça yeni ve şimdiye kadar gördüğüm şeyi seviyorum. Görünüm Modelinin gözlenebilir bir özellik metin kutusuna (input type = metin) metin özelliği bağlı olduğunda Halen, ViewModel sadece metin kutusu bulanıklık olayı güncellenir. metin kutusunun değişiklik olayında Görünüm Modelini güncellemenin bir yolu var mı? Ben "init" değişim olayı metin kutusunda işleyicisi kablolama üzerinde özel bir bağlama işleyicisi oluşturma çalıştı, ama bir türlü çalışmadı. Bu hedefe ulaşmak için bu doğru mu? Ya da daha kolay bir yolu var mı? Buraya bakınKnockoutJS - yerine OnBlur Seçenekler

: http://knockoutjs.com/documentation/value-binding.html

<p>Your value: <input data-bind="value: someValue, valueUpdate: 'afterkeydown'" /></p> 
<p>You have typed: <span data-bind="text: someValue"></span></p> <!-- updates in real-time  --> 

<script type="text/javascript"> 
var viewModel = { 
    someValue: ko.observable("edit me") 
}; 
</script> 

cevap

21

belirtmek için de bağlayıcı bir 'değer' kullanmak ve valueUpdate bağlayıcı özelliğini ekleyebilirsiniz Fare böylece valueUpdate olayları geçirmeniz gerekir. gibi ..

<p>Your value: <input data-bind="value: someValue, valueUpdate:['afterkeydown','propertychange','input']" /></p> 

+1

http://jsfiddle.net/uJCQq/4/ sana bir cazibe gibi çalışır @KodeKreachor, teşekkürler burada deneyin! –

+0

Bu,% 100 güncellemeyi garanti etmediğinden, örn. Bir kullanıcı bir içerik menüsü kullanarak yapıştırırsa, bu işe yaramaz. –

6

Üstü kopya macunundan ederken çalışmaya edilmediğini kontrol güncellemek için ne zaman

+0

Teşekkürler, müthiş yardımcı oldu! – WhatsInAName