У меня есть сетка, в которой я поместил пользовательскую кнопку в navgrid для вставки совершенно разных данных в другую таблицу, поэтому я использовал editGridRow («new»,…), где в URL-адресе php я просто размещаю данные в другой таблице.На самом деле я застрял с проблемой, если я отправляю форму, даже если я установил reloadAfterSubmit: false, он добавляет новую пустую строку в сетку…
Вы можете увидеть кусок кода здесь:
jQuery("#"+child_table_id).navButtonAdd("#"+pager_id,
{
caption:"Insert",buttonicon:"ui-icon-arrow-1-se",
onClickButton:function(){
var rows = jQuery("#"+child_table_id).getRowData();
if ( rows.length != 0 ) {
jQuery("#"+child_table_id).editGridRow("new",{height:140,width:420,url:"http://.../edit_datatable.php?table_name=mytable&fact=insert&q=1&flag=yes&ref_id="+id_row,
reloadAfterSubmit:false,
recreateForm:true,
closeOnEscape:true,
closeAfterAdd:true,
addCaption:'Insert',
savekey: [true,13],
bSubmit:'Save',
afterSubmit:function(response, postdata){ alert('inserting to a total different table...'); return {0:true} }
});
}
},
position:"last",
title:"Insert new step...",
cursor:"pointer"
});
Я даже пытался добавить:
onClickButton:function(){ $("#"+child_table_id).setGridParam({ datatype: 'local' }); }
afterSubmit:function(response, postdata){ return {0:true} },
onclickSubmit : function(params, posdata) {return {0:true} },
afterComplete:function(response, postdata, formid) { $("#"+child_table_id).setGridParam({ datatype: 'json' }); }
, но он все равно добавил строку в сетке…
Так, как я могу помешать jqGrid добавить новую пустую сетку и обновитьсетка?…