jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
一般的,一个jqGrid的基本属性有一下几个常用的。
在初始化的时候,若不想执行表格的初始化方法,则需要设置url为空,datatype设置为"local",否则会有js错误,导致页面上的button按钮不起作用。
如果需要在开始时候执行表格的初始化,则需要设置url的值,在.net mvc架构下,即“/controller/action/”这样的格式,第一个"/"是必须的,否则不能进入后台的action中,最后一个“/”好像不是必需的,一般都加上。在设置了url后,还要注意的问题就是datatype要与postData的数据类型相匹配,否则会有错误。例如datatype:"json",那么postData需要传的是json对象。
如果想动态的执行表格的初始化,那么刚开始可以不用设置url值,datatype设置为"local"(否则报错)。然后动态的触发jqGrid的初始化action。
比如,在一张表中双击后后触发,代码如下:
这样就可以动态的显示表格的数据了。
代码如下:
$("#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 } });
这样就可以动态的显示表格的数据了。