首页 > 解决方案 > 如何将对象参数从 jQgrid 的格式化程序函数分配给函数?

问题描述

我正在开发 Spring-Mvc 项目。

我目前正在使用 JQgrid 来绘制列表。我的问题是我不能将变量用作函数

这就是我遇到麻烦的地方。

        {name : 'product_id',               
            index : 'pid',          
            align : 'center',           
            sortable : false,
            formatter : function(cellValue, options, rowObject) {
                return '<a href="#" onclick="onCellSelect(\''+ cellValue +'\','+ rowObject +');" >'+ cellValue +' </a>';
            } 
            },

rowObject不可用,因为它是 JSONdata 。

这是错误

未捕获的 SyntaxError:意外的标识符

onCellSelect([object Object]) // rowobject 

你怎么能解决这个问题?

标签: javascriptjavaspringspring-mvcjqgrid

解决方案


我现在已经解决了这个问题,但这不是一个根本的解决方案。这只是获取数据的一种手段。如果这个问题没有解决方案,我将其作为解决方案提出。

我的解决方案是引入一个独特的价值,并通过重复的功能获得它。

 return '<a href="#" onclick="onCellSelect(\''+ cellValue +'\','+ rowObject.seq_no +');" >'+ cellValue +' </a>';
...

function onCellSelect(cellValue, seq_no) {

    var selarrrow = jQuery("#chargeGoodsList").jqGrid("getDataIDs");
    $(selarrrow).each(function(i){  
        if (seq_no == $('#chargeGoodsList').getCell(selarrrow[i], 'seq_no')) {
            title = $('#chargeGoodsList').getCell(selarrrow[i], "title")
            explanation = $('#chargeGoodsList').getCell(selarrrow[i], "explanation")
    ...

我相信有比这更好的解决方案。如果有好的解决方法,请回答。


推荐阅读