sql >> データベース >  >> RDS >> Mysql

jqGridAct奇妙な挿入および更新後のデータの再読み込み

    使用したコードを確認し、理由を見つけました。 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のオプション -デフォルトのオプションです。



    1. json_encodeは配列をオブジェクトに変換します

    2. Struts2をHibernateおよびPostgreSQLと接続する方法

    3. Oracleデータ型:VARCHAR2またはCHARを使用する必要があります

    4. Postgres:制約がまだ存在しない場合は制約を追加します