У меня есть следующий код, чтобы войти в встроенное редактирование по двойному щелчку:Reload jqGrid на сохранение/отправить
ondblClickRow: function (row_id) {
if(row_id != null) {
$('#Products').jqGrid('restoreRow',last_selected_row);
$('#Products').jqGrid('saveRow',row_id);
$("#Products").jqGrid('editRow',row_id, true, null,
function(){ $("#Products").trigger("reloadGrid", [{current: true}]); },
'xtras/Products.php',
null,{},
{},{}
);
$("#Products_ilsave").removeClass('ui-state-disabled');
$("#Products_ilcancel").removeClass('ui-state-disabled');
$("#Products_ilcancel").removeClass('ui-state-disabled');
$("#Products_ilcopy").addClass('ui-state-disabled');
$("#Products_iladd").addClass('ui-state-disabled');
}
}
и навигация определения:
$("#Products").jqGrid("navGrid", "#Products_pager",
{search: true, add: false, edit: false, del: true, refreshstate: "current"},
{},
{},
{},
{},
{sopt:['eq','ne','cn','bw','bn','ge','le','lt','gt'], multipleSearch:true, showQuery: false}
)
.jqGrid("inlineNav", "#Products_pager",
{add: true, edit: true},
)
.navButtonAdd('#Products_pager',{
caption:"",
title:"Copy selected row",
id:"Products_ilcopy",
buttonicon:"ui-icon-copy",
onClickButton: function(){
var srcrowid = $grid.jqGrid('getGridParam', 'selrow');
if (srcrowid > 0) {
$('#Products_iladd').click();
var rowData = $('#Products').jqGrid('getRowData', srcrowid);
rowData.ID = '';
rowData.Catalogue = '';
rowData.UPCEAN = '';
rowData.copyID = srcrowid;
$grid.jqGrid('setRowData', 'new_row', rowData);
var ondblClickRowHandler = $('#Products').jqGrid("getGridParam", "ondblClickRow");
ondblClickRowHandler.call($("#Products")[0], 'new_row');
} else {
alert('Please select a row to copy');
return false;
}
},
position:"last"
});
Как вы можете видеть, когда я нажимаю на кнопку COPY новая строка создана и ondblClickRow
вызывается для ввода встроенного редактирования. Если я нажму на кнопку SAVE в navGrid
- он сохраняет, но не перезагружает. Если я нажму Enter, то он перезагрузится, но ничего не спасет.
Как сэкономить и перезагрузить сетку после того, как понравится?
-------------- UPDATE ---------------------
добавить, редактировать, удалять, копия - все тот же URL - 'Xtras/products.php'
url:'xtras/Products.php',
editurl:'xtras/Products.php',
datatype: "json",
mtype:'GET',
$ ('#') Продукты - это единственная сетка на странице
использованием - jqGrid 4.4.2
Важно знать следующее во всех вопросах jqGrid: какой тип данных вы используете? Вам нужно перезагрузить данные локально с сервера? Какой 'editurl' вы используете? Вы редактируете и сохраняете данные локально или на сервере? Ir '$ ('# Products')' той же сетке или другой? Какую версию jqGrid и какую вилку jqGrid (старый jqGrid, бесплатный jqGrid, Guriddo jqGrid JS) вы используете? – Oleg
@Oleg Привет, извините, конечно ... я обновил сообщение .... – Elen