2015-08-18 9 views
12

टाइपिंग पर 5.12 संस्करण का उपयोग कर Combobox मान गायब हो रहे हैं। मैं फार्म के रूप में नीचे में एक Typeahead बता गया है:टाइपिंग

Combobox दुकान:

Ext.define('MyApp.view.myobj.field.CustomObject', { 
    extend:'Ext.form.field.ComboBox', 
    xtype: 'cstmObject', 
    requires: [ 
     'MyApp.model.myobj.CustomObject' 
    ], 
    fieldLabel: 'Custom Object Name', 
    displayField: 'name', 
    valueField: 'name', 
    queryMode: 'remote', 
    selectOnFocus: false, 
    typeAhead: true, 
    hideTrigger: true, 
    minChars: 1, 
    queryCaching : false, 
    store:{ 
     model: 'MyApp.model.myobj.CustomObject' 
    } 
} 

नीचे दिए गए फॉर्म में टुकड़ा है:

{ 
    xtype: 'cstmObject', 
    fieldLabel: 'Custom Object Name', 
    allowBlank: false, 
    maxLength: 5, 
    enforceMaxLength: true, 
    bind: '{customObject.row}' 
} 

कभी कभी लटकती मान प्रदर्शित कर रहे हैं बता गया में मूल्य टाइपिंग पर और कभी-कभी इनपुट के लिए नहीं दिख रहा है। जब मैं नेटवर्क पैनल का निरीक्षण करता हूं, तो स्टोर सर्वर से ठीक से लोड हो रहा है।

स्टोर से ठीक से लोड होने पर ड्रॉपडाउन मूल्यों को दिखाने के लिए संभावित क्लाइंट साइड समस्याएं क्या हैं?

अद्यतन: मुझे इस मुद्दे के लिए एक पैटर्न मिला है, यदि टाइप किए गए मान के साथ ड्रॉपडाउन सूची में रिकॉर्ड का सटीक मिलान मिलता है, तो केवल ड्रॉपडाउन मान गायब हो जाते हैं। (उदाहरण के लिए अगर मैं टाइप वर्णमाला एक और अगर वहाँ मूल्य के साथ एक रिकॉर्ड एक फिर ड्रॉपडाउन मान गायब हो रहे हैं। अगर मैं टाइप है एक फिर ड्रॉपडाउन गायब हो जाते हैं, क्योंकि वहाँ के साथ कोई रिकॉर्ड नहीं है नहीं होगा लोअरकेस )।

इसे ठीक करने के लिए मुझे आवश्यक कॉन्फ़िगरेशन की आवश्यकता क्या है?

+0

के साथ स्वत: पूर्ण गायब हो जाएंगे, जैसा कि आप इसे दिखाते हैं, इसे काम करना चाहिए (मैंने आपके कोड को एक [fiddle ] (https://fiddle.sencha.com/#fiddle/tg7))। हो सकता है कि इस मुद्दे को खुद को एक पहेली में पुन: उत्पन्न करने का प्रयास करें, या उदाहरण के लिए काम कर रहे और टूटे हुए मामलों दोनों के लिए सर्वर प्रतिक्रियाएं पोस्ट करें। मेरे लिए ऐसा लगता है कि समस्या सर्वर से संबंधित है। – rixo

+0

नीचे जोनाथन कार्टवाइट के लिए पहेली देखें। जब तक मैंने combobox के लिए सट्टा स्रोत के लिए एक स्टोर का उपयोग नहीं किया तब तक मैंने उस बेवकूफ में एक ही चीज़ को ठीक किया था। यदि आपके पास अभी भी मेरी पहेली है, तो मुझे बताएं। –

उत्तर

4

लगता है जैसे इस Ext 5.1

में एक बग यह तब होता है जब केवल घटक एक मॉडल के लिए बाध्य किया जाता है।

इस समस्या को पुन: पेश करने के लिए यहां Fiddle है। टाइप करें आप परिणाम देखेंगे और जब आप ए 1 (जो स्टोर में मौजूद है) टाइप करेंगे, तो परिणाम छिपाए जाएंगे।

Ext 5 फोरम में एक bug लॉग इन

अद्यतन

यहाँ एक ठीक है कि मैं के साथ आया है। जिस तरह से आप अपवाद है कि विकल्पों में से जलाया के साथ चाहते हैं, उसमें

Ext.define('MyApp.overrides.form.field.ComboBox', { 
    override: 'Ext.form.field.ComboBox', 

    /** 
    * Fix for EXTJS-19274 
    */ 
    setValue: function(value) { 
     var me = this; 

     // This is the value used to forceSelection in assertValue if an invalid value is left 
     // in the field atcompleteEdit. Must be cleared so that the next usage of the field 
     // is not affected. 
     me.lastSelectedRecords = null; 

     // Value needs matching and record(s) need selecting. 
     if (value != null) { 
      // Only go through text/record matching if there's a change. 
      if (value !== me.getRawValue()) { 
       me.doSetValue(value); 
      } 
     } 
     // Clearing is a special, simpler case. 
     else { 
      me.suspendEvent('select'); 
      me.valueCollection.beginUpdate(); 
      me.pickerSelectionModel.deselectAll(); 
      me.valueCollection.endUpdate(); 
      me.resumeEvent('select'); 
     } 
     return me; 
    } 
}); 
3

मुझे यह पसंद ExtJS कॉम्बो है:

{ 
xtype  :'combo', 
emptyText :'Pilih Client ...', 
id   :'f_client', 
store  : 'store_client', 
displayField:'longname', 
typeAhead : true, 
valueField :'nickname', 
width  : 350 
} 

और मैं डेटा खोज लोअरकेस प्रयास करें या एक अपरकेस ठीक है, इसलिए मुझे लगता है कि आप अपने सर्वर साइड पर फिर से जांच करना चाहिए। ऑरैकल जैसी कुछ क्वेरी केस संवेदनशील होती है।

column1 like '%a%' 

और

`column1 like '%A%'` 

अलग है।

3

Ext.form.field.ComboBox में संपत्ति caseSensitive है जो डिफ़ॉल्ट रूप से false है। इसका मतलब है कि समस्या आपके नियंत्रण में हो सकती है, लेकिन केवल तभी जब यह संपत्ति true पर सेट हो। यदि यह संपत्ति false है तो आप अपने कंसोल (या क्रोम के लिए सेन्चा एक्सटेंशन के साथ) में देख सकते हैं।

सर्वर पर भेजने के लिए अपने कंसोल के अपने नेटवर्क टैब में भी जांचें। यदि कॉम्बो अपरकेस भेजता है, लेकिन सर्वर लोअरकेस देता है, तो समस्या सर्वर की तरफ है।

4

बेला fiddle here काम करता है एक दुकान से आते हैं। मैंने जो देखा वह यह है कि मुझे ए 1 टाइप करने के बाद छुपाए बिना काम करने के लिए सीधे एक स्टोर में कम्बोबॉक्स बांधना पड़ा।

अन्य लोगों के लिए इस मुद्दे पर सूचीबद्ध अन्य झुंडों की तलाश में, यदि आप बहुत धीरे धीरे टाइप करते हैं तो आप व्यवहार को नहीं देखते हैं। यदि आप इसे उसी गति में टाइप करते हैं, तो आप आमतौर पर एक पोस्ट या कुछ लिखते हैं, जब आप

+0

समस्या तब होती है जब हम इसे मॉडल से जोड़ते हैं। बाध्यकारी के बिना कोई मुद्दा नहीं है। अपने बेवकूफ को देखा, यह मॉडल से बंधे नहीं है, ताकि यह ठीक काम कर रहा हो। – Awesome

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