2010-08-20 14 views
7

मेरे पास एक अन्य पैनल में एम्बेडेड निम्न ExtJS पैनल है, जो तब TabPanel में रहता है और TabPanel FormPanel में है।ExtJS पैनल ठीक से प्रस्तुत नहीं करता है जब तक कि मैं फ़ायरबग खोलूं?

ऐसा कहा जा रहा है कि, इन प्रारंभ/समाप्ति दिनांक फ़ील्ड प्रारंभ में बहुत छोटी कोशिकाओं में प्रदर्शित होते हैं - कोशिकाएं इतनी छोटी होती हैं कि मैं क्षैतिज स्क्रॉल बार देखता हूं। अब यहां अजीब हिस्सा है: अगर मैं फायरबग खोलता हूं, तो सब कुछ जगह में आ जाता है।

क्या किसी को पता है कि क्या हो रहा है? यह पहली जगह में सही ढंग से प्रस्तुत क्यों नहीं कर रहा है और फ़ायरबग फ़ायरबग खोलकर सब ठीक से काम क्यों करता है?

var dateFields = new Ext.Panel({ 
    id: 'dateFields', 
    labelAlign: 'bottom', 
    border: false, 
    items: [{ 
     layout: 'column', 
     defaults: { 
      columnWidth: 0.5 
     }, 
     items: [{ 
      layout: 'form', 
      border: false, 
      items: [{ 
       xtype: 'datefield', 
       name: 'start_date', 
       fieldLabel: 'Start Date' 
      }] 
     }, { 
      layout: 'form', 
      border: false, 
      items: [{ 
       xtype: 'datefield', 
       name: 'end_date', 
       fieldLabel: 'End Date' 
      }]     
     }] 
    }] 
}); 
+0

मुझे लगता है किसी भी पुनर्प्रवाहित भी ऐसा ही होगा साथ पैनल प्रबंधन कर सकते हैं, नहीं बस फायरबग खोलना। ब्राउज़र का आकार बदलने का प्रयास करें, क्या यह वही काम करता है? –

उत्तर

1

मैंने इस मुद्दे को पहले देखा है ... आपको तीन चीजें करने की आवश्यकता हो सकती है।

  1. माता पिता पैनल कि datefields पैनल में शामिल है, deferredRender सेट एक FormPanel है, तो: सच
  2. अपने टैब फलक पर layoutOnTabChange सेट: सच < - मुझे लगता है कि datefields अनुमान लगा रहा हूँ पैनल डिफ़ॉल्ट सक्रिय पैनल सही नहीं है?
  3. अपने कोड पर ऊपर, datefields पैनल एक लेआउट दे:। फिट " 'यह इसलिए है कि यह कॉलम लेआउट बेहतर
+0

"layoutOnTabChange: true" चाल है। धन्यवाद! – Huuuze

0

, क्रोम के साथ प्रयास करें यदि यह काम करता है, तो आप अपने कोड में कहीं एक console.log छोड़ दिया हो सकता है।

जब फ़ायरबग खुला है, console मौजूद है।
जब यह बंद हो जाता है, console मौजूद नहीं है, और console.log कोड को चुपचाप तोड़ देता है।

+0

यदि आपके पास फ़ायरबग स्थापित है console.log() फ़ायरबग पैनल बंद है, तो भी मौजूद है – wezzy

+0

कंसोल.लॉग(); चेतावनी (') के साथ केवल एक स्क्रिप्ट आज़माएं हाय '); एक बीमा फ़ायरबग वास्तव में बंद है, न सिर्फ छिपा हुआ है। अलर्ट को एफएफ में पॉपअप नहीं करना चाहिए, या शायद यह कहीं कॉन्फ़िगर है। – Mic

+0

@wezzy यह ज्यादातर समय सही नहीं है। जब फायरबग बंद हो जाता है, तो कंसोल () 'एन है परिभाषित। फायरबग * देखो * बंद हो सकता है लेकिन सिर्फ छुपाया जा सकता है (आप अंतर बता सकते हैं कि आइकन ग्रे हो गया है या नहीं)। इस डेमो के साथ इस व्यवहार की पुष्टि करें: http://jsbin.com/avenu4/5। –

1

आपके बाहरी पैनल में कोई लेआउट नहीं है। layout:'fit' को जोड़ने का प्रयास करें और देखें कि क्या इससे मदद मिलती है।

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