1

CodeIgniter と JQuery Grid を使用しています。このトピックについてあなたがここで行った回答を見ましたが、どれも私の問題を解決できませんでした.
実際には、jqGrid があり、データベース サーバーが返すいくつかの種類のエラーを挿入するダイアログを表示する必要があります。

たとえば、あるケースでは、次のエラーが発生します。

キー「user_store_turn_index」の重複エントリ「18-2-1-2012-10-25」

これを取得して、現在の代わりにカスタム メッセージを表示する必要があります。

エラー ステータス:「内部サーバー エラー」。エラーコード: 500

イベントでやってみたaftersubmit。ドキュメントを読み、利用可能な例を見ましたが、何も機能しません。

私の JavaScript コード内には、jqGrid の送信後イベントを処理する関数があります。

afterSubmit : function(response, postdata){ 
    test_validate
           return false;
    },
}

次に、送信後イベントの応答を取得する関数を作成します。

function test_validate(response,postdata) {
    alert('test');
    if(response.responseText == '') {
        success = true;
    } else {
        success = false;
    }
    return [success,response.responseText]
}

しかし、何も起こりません...ほぼ完全なjqueryグリッドコードは次のとおりです

$(document).ready(function() {

           var grid = jQuery("#newapi_1351189510").jqGrid({
                    ajaxGridOptions : {type:"POST"},
                      jsonReader : {
                      root:"data",
                      repeatitems: false
                   },
                    rowList:[10,20,30],
                    viewrecords: true
                   ,url:'http://localhost/sp/index.php/turn_open/getData'
,editurl:'http://localhost/sp/index.php/turn_open/setData'
,datatype:'json'
,rowNum:'20'
,width:'600'
,height:'300'
,pager: '#pnewapi_1351189510'
,caption:'Apertura de caja'
,colModel:[
{name:'username',index:'username',label:'Usuario' ,align:'center',width:180,editable:false  }
,{name:'TurnName',index:'TurnName',label:'Turno' ,align:'center',width:180,editable:false  }
,{name:'date',index:'date',label:'Fecha' ,width:100,editable:true,edittype:'text',editrules:{required:false,date:true}  ,editoptions: {size: 10, maxlengh: 10,dataInit: function(element) { $(element).datepicker({dateFormat: 'yy-mm-dd',changeMonth: true,changeYear: true,yearRange: '1982:2022'})}},searchoptions: {size: 10, maxlengh: 10,dataInit: function(element) { $(element).datepicker({dateFormat: 'yy-mm-dd',changeMonth: true,changeYear: true,yearRange: '1982:2022'})}}}

]       })
            jQuery("#newapi_1351189510")
            .jqGrid('navGrid',
            '#pnewapi_1351189510',
            {view:false,
            edit:'1',
            add:'1',
            del:'1',
            close:true,
            delfunc: null
        },
         afterSubmit : function(response, postdata)
          { test_validate
           return false;
         },
        }, 
        {mtype: 'POST'} /*delete options*/,
        ).navButtonAdd('#pnewapi_1351189510',
                { caption:'', buttonicon:'ui-icon-extlink', onClickButton:dtgOpenExportdata, position: 'last', title:'Export data', cursor: 'pointer'}
                );
        ;

             function test_validate(response,postdata){
             alert('test');
               if(response.responseText == ''){
                 success = true;
                }else{
                success = false;
                }
                return [success,response.responseText]
             }

        });
4

0 に答える 0