Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jqgrid格式化程序不工作且无响应_Jqgrid - Fatal编程技术网

jqgrid格式化程序不工作且无响应

jqgrid格式化程序不工作且无响应,jqgrid,Jqgrid,我有一个js文件和名为viewLineBtn的函数名 在我的服务器代码中,我创建了一个对象列表 List<GridModelClass> addmodelResult = new List<GridModelClass>(); addmodelResult.Add(new GridModelClass { name = "AddTestApprove", label = "Approve", width = "40", hidden = false, f

我有一个js文件和名为viewLineBtn的函数名

在我的服务器代码中,我创建了一个对象列表

    List<GridModelClass> addmodelResult = new List<GridModelClass>();

    addmodelResult.Add(new GridModelClass { name = "AddTestApprove", label = "Approve", width = "40", hidden = false, formatter = "viewLineBtn" });
List addmodelResult=new List();
addmodelResult.Add(新的GridModelClass{name=“AddTestApprove”,label=“Approve”,width=“40”,hidden=false,formatter=“viewLineBtn”});

但是,无法识别viewLineBtn。如何解决它?

您似乎将
colModel
作为JSON数据从服务器返回。因此,您有了
格式化程序
属性,该属性的类型为
字符串
(如
格式化程序:“viewLineBtn”
),而不是函数(如
格式化程序:viewLineBtn
,其中
viewLineBtn
以前定义为函数)

要解决此问题,可以更改定义格式化程序函数的方式。而不是用法

函数viewLineBtn(单元格值、选项、行对象){
//在这里做点什么
返回htmlFragmentOfCell;
}
你应该使用

$.extend($.fn.fmatter{
viewLineBtn:函数(单元格值、选项、行对象){
//在这里做点什么
返回htmlFragmentUsedInCell;
}
});
在这种情况下,您可以在
colModel
中使用
格式化程序:“viewLineBtn”

如果您定义了,我建议您始终定义(
unformat
property)。若要在使用
格式化程序的字符串值时执行此操作,您应按以下方式定义UnformMatter:

$.extend($.fn.fmatter{
viewLineBtn:函数(单元格值、选项、行对象){
//在这里做点什么
返回htmlFragmentUsedInCell;
}
});
$.extend($.fn.fmatter.viewLineBtn{
未格式化:函数(单元格值、选项、元素){
//在这里做点什么
从DomeLem返回HtmlFragments;
}
});

jQGrid的格式化程序是您声明的Javascript函数,在前端填充网格中的数据时调用它们。jQGrid格式化程序函数的参数也非常具体。参考资料。据我所知,自定义格式化程序与服务器代码无关。我在列表中添加了formatter=“viewLineBtn”,并且在我的javascript中有一个函数viewLineBtn。发布您的javascript供我们查看。