jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法


一般的,一个jqGrid的基本属性有一下几个常用的。
复制代码 代码如下:

$("#id").jqGrid({
url: "",
datatype: "local",
postData: { strJson: Data },
mtype: "post",
height: 45,
width: 450,
rowNum: rum, //每页的记录数
pgtext: "第{0}页 共{1}页",
pgbuttons: true,
autoheight: true,
rownumbers: false, // 是否显示行数
pgbuttons: true, // 分页按钮是否显示
pginput: true, // 是否允许输入分页页数
scrollrows: false, // 是否显示行滚动条
viewrecords: true, // 是否显示总记录数
multiselect: true, // 是否显示复选框
recordpos: "left", // 记录数显示位置
sortorder: "asc", //排序方式
pager: "#Pager"

)}

  在初始化的时候,若不想执行表格的初始化方法,则需要设置url为空,datatype设置为"local",否则会有js错误,导致页面上的button按钮不起作用。

  如果需要在开始时候执行表格的初始化,则需要设置url的值,在.net mvc架构下,即“/controller/action/”这样的格式,第一个"/"是必须的,否则不能进入后台的action中,最后一个“/”好像不是必需的,一般都加上。在设置了url后,还要注意的问题就是datatype要与postData的数据类型相匹配,否则会有错误。例如datatype:"json",那么postData需要传的是json对象。

  如果想动态的执行表格的初始化,那么刚开始可以不用设置url值,datatype设置为"local"(否则报错)。然后动态的触发jqGrid的初始化action。

比如,在一张表中双击后后触发,代码如下:
复制代码 代码如下:

   //双击行事件
ondblClickRow: function () {
courseData = JSON.stringify({
stuNum: studentNum,
rowNum: rum,
page: 1
});
jQuery("#courseInfoGrid").jqGrid("setGridParam", {
url: "/PersonalArrearsSettlement/GetStudentCourseInfo", //设置表格的url
datatype: "json", //设置数据类型
postData: { strJson: courseData }
});

  这样就可以动态的显示表格的数据了。
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3