JQGrid:排序和自定义格式化程序
JQGrid: Sorting & Custom formatters
所以我有一个jqgrid,我使用自定义格式化程序来格式化列,无论如何,当我单击列子头进行排序时,它会按预期对列进行排序,但它删除了我所做的格式,而是将"[对象对象]"放入格式化程序应该完成其工作的列中。
特定的格式化程序是:
function(cellVal, options, rowObject){
var optsURI = '../webrelease/common/images/page_v2_u'+(rowObject.opt2Up==2?1:0)+'_s'+(rowObject.optDuplex?1:0)+'_c'+(rowObject.optColor?1:0)+'_52.png';
return $('<img class="finishing_icon" height="40" src="'+optsURI+'" />').attr('jobid', rowObject.jobid).click(finishingOptsCycle);
}
这似乎适用于删除和添加行,但是一旦我点击度假村,列就会从图像变为字符串 [对象对象]
关于如何解决这个问题的任何想法?
为了完整起见,这是我的整个jqgrid(不包括行和格式化程序):
grid.jqGrid({
datatype: "local",
editurl: "clientArray",
width: 680,
height: 290,
colNames: [...],
colModel: [...],
hidegrid: false,
shrinkToFit:false,
multiselect: true,
scroll:1,
loadui: "block",
loadtext: "Loading job list...",
caption: 'Job List <img class="refreshbutton" width="20" height="20" src="../webrelease/desktop/images/icon_circle_arrow_right.png" />',
pager: '#jqgrid_pager',
onSelectRow: rowSelect,
onSelectAll: allRowsSelect
});
问题的原因是自定义格式化程序的错误用法。实现自定义格式化程序的函数必须返回字符串。
如果不是真正需要的,我不建议您id
属性分配给网格元素。我不明白为什么你需要用 id <img>
。
如果您需要在单击带有<img>
单元格时实现一些自定义操作,则可以更好地使用onCellSelect
回调。
如果您尚未为使用自定义格式化程序的同一列实现unformat
,我建议您这样做。
相关文章:
- Highcharts-如何在自定义格式化程序中获得默认的y轴标签格式化程序
- 如何在谷歌可视化中组合数字和模式格式化程序
- 用于用户内容的简单代码编辑器/文本格式化程序(在Rails中)
- 使用jqGrid列格式化程序函数使ng-click工作
- Highcharts:格式化程序和点击功能don'不能使用Angular
- 如何在TiddlyWiki中制作列表格式化程序
- Highcharts xAxis将格式化程序回调数据标记为空
- Angular.js指令格式化程序只调用过一次,或者如何告诉ngModel表现得像watchCollection
- 高图表 - 是否可以为每个系列添加工具提示格式化程序
- jqGrid - 如何通过自定义格式化程序提供多个预定义的格式化程序
- 工具提示格式化程序中的间距错误
- Ruby MySQL格式化程序
- Angular Directive格式化程序/渲染器不更新
- sap.m.按钮文本格式化程序
- 城市FR格式化程序案例
- 在JQGridshowlink格式化程序中添加了动态参数
- SAPUI5 - 格式化程序功能不起作用
- 使用 jquery 替换的 Highcharts 工具提示格式化程序
- 无法输入 Django Chartit 格式化程序字段
- JQGrid:排序和自定义格式化程序