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]
}
});