Вы можете сделать следующее
var selRowId = grid.jqGrid ('getGridParam', 'selrow');
if (selRowId) {
var dataFromGrid = {row: grid.jqGrid ('getRowData', selRowId) };
var xmldata='<?xml version="1.0" encoding="utf-8" standalone="yes"?>\n<rows>\n'+
xmlJsonClass.json2xml (dataFromGrid, '\t') + '</rows>';
alert(xmldata);
}
см. здесь модифицированную демонстрацию.
ОБНОВЛЕНО: Если вам нужно добавить дополнительные атрибуты к элементам <row>
, вы должны добавить свойства, начинающиеся с'@'.
var selRowId = grid.jqGrid ('getGridParam', 'selrow');
if (selRowId) {
var rowData = grid.jqGrid ('getRowData', selRowId);
rowData["@foo"] = "bar";
var xmldata='<?xml version="1.0" encoding="utf-8" standalone="yes"?>\n<rows>\n'+
xmlJsonClass.json2xml ({row: rowData}, '\t') + '</rows>';
alert(xmldata);
}
См. демо .