मैंने आपके द्वारा उपयोग किए गए कोड को सत्यापित किया और कारण पाया। आपके पास id
था आपके कोड में डुप्लिकेट समस्या . आपने <table>
. परिभाषित किया है निम्नलिखित के रूप में jqGrid के लिए उपयोग किया जाने वाला तत्व
<table id="location"><tr><td /></tr></table>
<div id="pager-location"></div>
इसमें "location"
. है id
. के रूप में . बाद में आपने परिभाषित किया
colModel: [
{name:'idms_location',index:'idms_location', width:150, editable:true,add:true, del:true, key:true},
{name:'location',index:'location', width:800,editable:true, add:true, del:true}
],
जहां नाम location
कॉलम नाम के रूप में उपयोग किया जाएगा। समस्या यह है कि कॉलम नाम का उपयोग id
. बनाने के लिए किया जाएगा ग्रिड के विभिन्न तत्वों के नाम। इसके अलावा फॉर्म संपादन सीधे कॉलम नाम का उपयोग id
. के रूप में करता है <input>
. का मान फ़ील्ड जो स्थान का प्रतिनिधित्व करती है . ऐड फॉर्म के उपयोग के बाद निम्नलिखित तत्व
<input name="location" class="FormElement ui-widget-content ui-corner-all" id="location" role="textbox" type="text">
id="location"
. के साथ पेज पर मौजूद है बहुत। यदि उपयोगकर्ता फॉर्म को बंद कर देता है तो यह छिपा होगा, लेकिन नष्ट नहीं होगा। क्योंकि एडिट फॉर्म पेज पर पहले . रखा जाएगा <table id="location">
अगला $("#location tbody:first")
लाइन
में इस्तेमाल किया गया अधिक तालिका न ढूँढ़ें और ग्रिड खाली रहे।
आपको क्या करना चाहिए बस नाम बदलें <table id="location">
कुछ इस तरह के लिए <table id="
ग्रिड-स्थान">` या कोई अन्य नाम चुनें। आपको संबंधित जावास्क्रिप्ट कोड को अपडेट करना चाहिए।
अन्य परिवर्तन जो ग्रिड में किए जाने चाहिए:
- बदलें
jsonReader: {repeatitems: true, idms_location: "idms_location" }
सेjsonReader: {id: "idms_location" }
। gridview: true
विकल्प।autoencode: true
विकल्प।- गैर-मौजूदा विकल्प हटाएं
add:true, del:true
colModel
. से गुण index
हटाएंcolModel
. से गुण ।- आपको
Content-Type
ठीक करना चाहिए HTTP शीर्षलेख जिसे आप JSON डेटा के साथ सर्वर प्रतिक्रिया में उपयोग करते हैं। यहContent-Type: application/json
. होना चाहिएContent-Type: text/html
. के बजाय जिसका आप वर्तमान में उपयोग करते हैं। यह PHP कोड की सिर्फ एक लाइन है। - आप
{edit:true,add:true,del:true}
को हटा सकते हैंnavGrid
. के विकल्प - यह डिफ़ॉल्ट विकल्प है।