使用したコードを確認し、理由を見つけました。 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>
の値 場所を表すフィールド 。 Addフォームを使用した後、次の要素
<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="
のようなものに grid-location">`または他の名前を選択します。対応するJavaScriptコードを更新する必要があります。
グリッドで実行する必要があるその他の変更:
- 変更
jsonReader: {repeatitems: true, idms_location: "idms_location" }
jsonReader: {id: "idms_location" }
。 -
gridview: true
を追加します オプション。 -
autoencode: true
を追加します オプション。 - 存在しないオプションを削除する
add:true, del:true
colModel
のプロパティ index
を削除しますcolModel
のプロパティ 。-
Content-Type
を修正する必要があります JSONデータを使用したサーバー応答で使用するHTTPヘッダー。Content-Type: application/json
である必要がありますContent-Type: text/html
の代わりに 現在使用しているものです。これは1行のPHPコードです。 -
{edit:true,add:true,del:true}
を削除できますnavGrid
のオプション -デフォルトのオプションです。