2010-09-06 12 views
7

कुछ त्वरित खोज केवल jQGrid पर संपादन योग्य फ़ील्ड के साथ एक मॉडल पॉपअप के माध्यम से एक नई पंक्ति जोड़ती है।jQGrid, ग्रिड के अंदर एक नई पंक्ति कैसे जोड़ें, एक मॉडल के माध्यम से नहीं?

क्या कोई मुझे नमूना में इंगित कर सकता है या मुझे कुछ कोड दिखा सकता है जो आपको शीर्ष पर ग्रिड में एक नई खाली पंक्ति जोड़ने की अनुमति देता है?

मैं ग्रिड के सबसे दायीं ओर अंत में एक कार्रवाई स्तंभ है जिसमें onRowSelect() मैं एक सहेजें बटन दिखाई देते हैं और मुझे लगता है कि बटन बचाने के लिए और ग्रिड मुझे लगता है कि ताज़ा कर बना सकते हैं ..

मैं नहीं कर सकता 'पंक्ति जोड़ें' बटन पर क्लिक करने के तरीके को समझें और शीर्ष पर ग्रिड के अंदर एक खाली पंक्ति जोड़ें।

एक विकल्प जो मैं देख सकता हूं वह एक क्षैतिज पंक्ति की तरह दिखने के लिए वर्तमान ऐड पंक्ति मोडल को स्टाइल करना है और इसे ग्रिड के शीर्ष पर अपनी पंक्ति की तरह दिखाना है।

jQGrid प्रलेखन: http://www.trirand.com/jqgridwiki/

उत्तर

10

आप डेटाप्रकार का उपयोग करते हैं: 'स्थानीय' तो आप स्थिति पैरामीटर 'first' करने के लिए सेट के साथ पंक्ति सम्मिलित करने के लिए addRowData विधि का उपयोग कर सकते हैं। http://www.trirand.com/jqgridwiki/doku.php?id=wiki:retrieving_data#array_data के तहत कुछ उदाहरण देखें।

+0

मैं इस समय डेटाटाइप जेसन का उपयोग कर रहा हूं। क्या कोई तरीका है कि मैं स्थानीय में बदलने के बिना addRowData का उपयोग कर सकता हूं? –

+0

@Moin Zaman: मुझे यकीन नहीं है, कि मैं सही समझता हूं कि आप क्या करना चाहते हैं। एकमात्र धारणा यह है कि आप इनलाइन संपादन मोड का उपयोग करते हैं और फॉर्म संपादन और नए डेटा का उपयोग नहीं करना चाहते हैं। आप एक खाली पंक्ति जोड़ना चाहते हैं और उपयोगकर्ता को इनलाइन संपादन मोड में संपादित करने की अनुमति देते हैं। क्या आप चाहते हैं कि आप चाहते हैं? यदि नहीं, तो कृपया अधिक विस्तार से समझाएं कि आप ग्रिड में कोई भी डेटा क्यों जोड़ना चाहते हैं जो सर्वर से डेटा प्रदर्शित करता है। – Oleg

+0

मैं डेटाबेस से ग्रिड को पॉप्युलेट कर रहा हूं, डेटा को जेसन के रूप में निकाल रहा हूं। मैं नई पंक्तियों या संपादित पंक्तियों को डेटाबेस में वापस सहेजने की भी योजना बना रहा हूं। जब उपयोगकर्ता एक नई पंक्ति बनाना चाहता है, तो मैं एक खाली पंक्ति जोड़ना चाहता हूं, फिर उपयोगकर्ता इस पंक्ति को डेटाबेस में सहेजने के लिए मानों को भर सकता है और कार्रवाई कॉलम में सहेज सकता है।मैं फिर ग्रिड को रीफ्रेश कर सकता हूं और जेसन डेटा फिर से प्राप्त कर सकता हूं, और इसमें नई जोड़ी गई पंक्ति होनी चाहिए। –

7

यह जवाब मेरे पिछले प्रश्न here में ओलेग के सौजन्य से है:।

उपयोग $ ("# ग्रिड") addRowData (rowid, डेटा, स्थिति, srcrowid);

आईडी के साथ एक नई पंक्ति सम्मिलित करता = rowid की स्थिति में डेटा में डेटा (एक वस्तु) युक्त निर्दिष्ट (प्रथम तालिका में, टेबल में या उससे पहले या पंक्ति के बाद पिछले में निर्दिष्ट srcrowid)। डेटा ऑब्जेक्ट का सिंटैक्स है: {name1: value1, name2: value2 ...} जहां नाम कॉलम का नाम है जो ColModel में वर्णित है और मान मान है। यह विधि एक बार पर एकाधिक पंक्तियां डाल सकती है। इस मामले में डेटा पैरामीटर को [{name1: value1, name2: value2 ...}, {name1: value1, name2: value2 ...}] और पहले विकल्प पंक्ति में डेटा से नाम होना चाहिए ऑब्जेक्ट जो पंक्ति की आईडी के रूप में कार्य करना चाहिए। यह नहीं है कि इस मामले में पंक्ति का नाम colModel से एक हिस्सा होना चाहिए।

पीएस कई jqgrid प्रश्नों और उत्तरों के लिए मेरी प्रोफ़ाइल पर एक नज़र डालें।

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