sql >> Databasteknik >  >> RDS >> Mysql

jqGrid Act Strange Laddar om data efter infogning och uppdatering

Jag verifierade koden du använde och hittade orsaken. Du hade id dubblettproblem i din kod . Du definierade

element som används för jqGrid enligt följande

<table id="location"><tr><td /></tr></table>
<div id="pager-location"></div>

Den har "plats" som id . Senare definierade du

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}     
],

där namnet plats kommer att användas som kolumnnamn. Problemet är att kolumnnamnet kommer att användas för att bygga id namn på olika element i rutnätet. Dessutom använder formulärredigeringen kolumnnamnet direkt som id värdet för fält som representerar plats . Efter användning av Lägg till formuläret följande element

<input name="location" class="FormElement ui-widget-content ui-corner-all" id="location" role="textbox" type="text">

finns på sidan med id="plats" för. Om användaren stänger formuläret kommer det att döljas, men inte förstöras. Eftersom redigeringsformuläret kommer att placeras på sidan före

nästa $("#location tbody:first") används i linjen hitta inte bordet mer och rutnätet förblir tomt.

Vad du bör göra är att bara byta namn på

till något som
` eller välj något annat namn. Du bör uppdatera den motsvarande JavaScript-koden.

Andra ändringar som bör göras i rutnätet:

  • ändra jsonReader:{repeatitems:true, idms_location:"idms_location" } till jsonReader:{id:"idms_location" } .
  • lägg till gridview:true alternativ.
  • lägg till autoencode:true alternativ.
  • ta bort icke-existerande alternativ add:true, del:true egenskaper från colModel
  • ta bort index egenskaper från colModel .
  • du bör fixa Content-Type HTTP-huvud som du använder i serversvaret med JSON-data. Det ska vara Content-Type:application/json istället för Content-Type:text/html som du använder för närvarande. Det är bara en rad PHP-kod.
  • du kan ta bort {edit:true,add:true,del:true} alternativ för navGrid - det är standardalternativ.



  1. hur man implementerar tabellarv i GreenDao

  2. Skript för att skapa Mysql-användare

  3. Hantera en PostgreSQL Commitfest

  4. Hur man får gårdagens datum i SQLite