2014-07-09 10 views
6

में कीप्रेस पर व्यूमोडेल का फोर्स अपडेट मेरे पास एक टेक्स्टबॉक्स फ़ील्ड है जिसमें इसकी व्यू प्रॉपर्टी मेरे व्यूमोडेल में किसी संपत्ति से जुड़ी है।केंडो यूआई: टेक्स्टबॉक्स

समस्या यह है कि व्यूमोडेल डिफ़ॉल्ट रूप से टेक्स्टबॉक्स की "बदली गई" घटना (जब टेक्स्टबॉक्स अपना ध्यान खो देता है) पर अपडेट किया जाता है।

मैं कुंजीपटल ईवेंट निष्पादित होने पर व्यूमोडेल को अपडेट करना चाहता हूं।

मैं प्रत्येक कुंजीपटल में "बदले" ईवेंट को मजबूर नहीं करना चाहता, क्योंकि उस ईवेंट हैंडलर में कुछ तर्क है और इसे प्रत्येक कीस्ट्रोक के लिए निष्पादित नहीं किया जाना चाहिए।

क्या "बदल गया" ईवेंट ट्रिगर किए बिना व्यूमोडेल को अपडेट करने के लिए केंडो को बताने का कोई तरीका है?

मुझे पता है कि मैं केवल व्यूमोडेल को मैन्युअल रूप से संशोधित कर सकता हूं, लेकिन मैं कुछ सरल और स्वचालित चाहता था।

अपने जवाब के लिए धन्यवाद,

उत्तर

10

उपयोग डेटा-वैल्यू-अपडेट अट्री bute। "कीप्रेस" घटना का उपयोग करके बाध्य मॉडल के अंतिम चरित्र को अद्यतन नहीं किया जाता है, इसलिए इसके बजाय "कीप" ईवेंट का उपयोग करें।

<input id="name" type="text" 
    data-bind="value: name" data-value-update="keyup"> 

मैंने शुरुआत में "कीप्रेस" का उपयोग करके परीक्षण किया, लेकिन व्यूमोडेल में "abcd" टेक्स्ट में "abcd" परिणाम दर्ज किया।

+0

यह एक जवाब जो अकेले खड़े कर सकता है, भले ही CodingWithSpike के जवाब हटा दिया जाएगा, के रूप में यह खड़ा है यह एक जवाब पर एक टिप्पणी, नहीं एक जवाब है। – bummi

+0

धन्यवाद, बम्मी। मैंने इसके जवाब के प्रारूप को इसके बजाय उत्तर में बदल दिया। – cheino

+2

दुर्भाग्यवश यह उनके विगेट्स पर काम नहीं करता है (maskedtextbox, numberictextbox) – xinthose

0
<input type="text" data-value-update="keypress" data-bind="value: searchBySystemValue, events: { keypress: onkeypressEvent }"/> 

यू घटनाओं में समारोह में जोड़ सकते हैं

संबंधित मुद्दे