从一个ColModel获取值,执行Math操作并将值应用于其他ColModel

时间:2013-09-18 08:27:44

标签: javascript jquery jqgrid jqgrid-asp.net

就像我在一个colModel中有Dates的情况一样,我需要用当前日期执行数学运算(减法)并在jQgrid中的另一个colModel json中显示它,

{name:'createdOn',hidden:true, width:80, sortable:true,editable: false,sorttype:'date', formatter:'date',formatoptions:{ srcformat: 'M d y H:i:s', newformat: 'd M y h:i A'},resizable:false}

可以在gridComplete或loadComplete中完成。?

提前致谢。

1 个答案:

答案 0 :(得分:0)

使用gridCompleteloadComplete 修改网格不是最好的方法。 HTML页面上元素的每种修改都相对昂贵(有关详细信息,请参阅the answer)。实现您的需求的最有效方法是创建网格,并为所有列提供正确的值。为此,我建议您使用两种方法中的一种:

  • 使用jsonmap定义为需要具有数学运算结果的列的函数。如果使用一个参数将jsonmap定义为函数,则回调函数将获得表示输入数据行的项。回调函数jsonmap只需要返回可以根据其他列的值计算的列的值。我相信你会在stackoverflow的旧答案中找到许多使用jsonmap的例子。例如herehereherehere等等。
  • 在 jqGrid处理数据之前修改从服务器返回的网格的输入数据。您可以使用beforeProcessing回调来“预处理”数据。您可以使用beforeProcessingherehereherehere等多个{{1}}的使用示例。