Моя проблема теперь пытается отправить идентификатор (editable: false
) строки при редактировании этой строки.Отправка дополнительных параметров в editurl на JQgrid
Например, у меня есть сетка с колоннами идентификатору пользователя (editable: false
), имя пользователя (editable: true
), FirstName (editable: true
), LastName (editable: true
). При редактировании строки сетка отправляет только параметры имени пользователя, имени и имени. На стороне сервера мне нужен идентификатор пользователя, чтобы узнать, к какому пользователю я применяю эти новые значения.
editUrl выглядит следующим образом:
editurl : CONTEXT_PATH+'/ajax/admin/savePart.do?category=1',
Благодарности
Это полный код:
$.jgrid.useJSON = true;
//http://www.trirand.com/jqgridwiki/doku.php?id=wiki%3Acommon_rules
$(document).ready(function() {
//alert(CONTEXT_PATH);
var lastsel;
jQuery("#rowed3").jqGrid(
{
url : CONTEXT_PATH+'/ajax/getPartesByCategory.do?catid=<s:property value="categoryId" />',
//url : '/autoWEB/text.html',
datatype: "json",
ajaxGridOptions: { contentType: "application/json" },
jsonReader : {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: false
},
headertitles: true,
colNames : [ 'ID', 'Pieza', 'Disponible'],
colModel : [ {
name : 'piezaId',
index : 'piezaId',
align : "right",
width : 50,
editable : false,
required : true
}, {
name : 'descripcion',
index : 'descripcion',
width : 390,
editable : true,
required : true
}, {
name : 'disponible',
index : 'disponible',
width : 80,
editable : true,
edittype : 'select',
editoptions:{value:"0:No;1:Si"},
required : true
} ],
rowNum : 20,
rowList : [ 20, 40, 60, 80 ],
pager : '#prowed3',
sortname : 'piezaId',
postData: {piezaId : lastsel},
mtype:"POST",
viewrecords : true,
sortorder : "desc",
onSelectRow : function(id) {
if (id && id !== lastsel) {
jQuery('#rowed3').jqGrid('restoreRow', lastsel);
jQuery('#rowed3').jqGrid('editRow', id, true);
lastsel = id;
}
},
editurl : CONTEXT_PATH+'/ajax/admin/savePieza.do?categoria=<s:property value="categoryId" />',
caption : "Piezas"
});
jQuery("#rowed3").jqGrid('navGrid', "#prowed3", {
edit : false,
add : false,
del : false
});
})
Что же такое hidedlg? –
Если 'hidedlg' установлен в true, этот столбец не появится в модальном диалоговом окне, где пользователи могут выбирать, какие столбцы показывать или скрывать (' columnChooser'). Подробнее см. Http://www.trirand.com/jqgridwiki/doku.php?id=wiki:show_hide_columns. – Oleg