我正在尝试使用jqgrid内联编辑功能。但是当内联编辑器被触发时,我得到了整个html标签。
可能是什么原因?感谢。
这是jqgrid代码:
$(document).ready(function () { 'use strict'; var grid; grid = jQuery("#list2"); grid.jqGrid({ editurl: "clientArray", datastr: topicjson, datatype: "jsonstring", height: "auto", loadui: "disable", colNames: [/*"id",*/"Items","nick","url"], colModel: [ //{name: "id",width:1, hidden:true, key:true}, {name: "elementName", width:250, resizable: false, editable: true}, {name: "nick", width:250, resizable: false, editable: true}, {name: "url",width:1,hidden:true} ], treeGrid: true, treeGridModel: "adjacency", caption: "jqGrid Demos", ExpandColumn: "elementName", //autowidth: true, rowNum: 100, //ExpandColClick: true, treeIcons: {leaf:'ui-icon-document-b'}, jsonReader: { repeatitems: false, root: "response" }, cellEdit: true, cellSubmit: "clientArray", onSelectRow: function(id){ if(id && id!==lastSel){ jQuery('#list2').restoreRow(lastSel); lastSel=id; } jQuery('#list2').editRow(id, true); } }); });
答案 0 :(得分:2)
事实证明,您可以在编辑前使用formatCell
事件来更改单元格内容。返回值是您想要的内容。对于这种特殊情况,treeGrid具有小图像,其中包含单元格中的所有html标记。编辑单元格时,默认情况下,所有内容都显示为单元格内容。要修复它,你可以这样做:
formatCell: function(rowid,cellname,value,iRow,iCol) {
return whatever_you_want_to_be;
}