Struts2与jqGrid的参数传递

来源:互联网 发布:steam古墓丽影在mac 编辑:程序博客网 时间:2024/05/18 02:29

最近,在项目中用到了jqGrid进行数据的显示。但是一直不明白数据是怎么进行传递的。在jqGrid中,参数rowNum定义了每页显示多少行数据,而在Action中则使用rows属性定义了每页中显示的数据行数。所以,一直不明白两个参数是怎样联系的。

今天,在网上找到了合理的解释。jqGrid中PrmNames选项用于设置jqGrid将要向Server传递的参数名称。默认情况下包含rows:"rows",第一个rows从rowNum取值,第二个rows表示向Server传递数据时,使用的参数名为" rows "。因此才会将rowNum的值传递给了Server中的rows属性。

如果PrmNames选项中修改为rows:"pageSize",那么会将rowNum的数据值使用pageSize参数向Server进行传递,相应的Action中也就需要pageSize属性接收每页显示的数据行数了。

下面贴上prmNames选项和jsonReader选项的相关参数说明。

prmNames : {      page:"page",    // 表示请求页码的参数名称      rows:"rows",    // 表示请求行数的参数名称      sort: "sidx", // 表示用于排序的列名的参数名称      order: "sord", // 表示采用的排序方式的参数名称      search:"_search", // 表示是否是搜索请求的参数名称      nd:"nd", // 表示已经发送请求的次数的参数名称      id:"id", // 表示当在编辑数据模块中发送数据时,使用的id的名称      oper:"oper",    // operation参数名称      editoper:"edit", // 当在edit模式中提交数据时,操作的名称      addoper:"add", // 当在add模式中提交数据时,操作的名称      deloper:"del", // 当在delete模式中提交数据时,操作的名称      subgridid:"id", // 当点击以载入数据到子表时,传递的数据名称      npage: null,       totalrows:"totalrows" // 表示需从Server得到总共多少行数据的参数名称,参见jqGrid选项中的rowTotal  }  
jsonReader用于设置如何解析从Server获取的json数据。

jsonReader : {      root: "rows",   // json中代表实际模型数据的入口,也就是Action中数据列表的名称      page: "page",   // json中代表当前页码的数据      total: "total", // json中代表页码总数的数据      records: "records", // json中代表数据行总数的数据      repeatitems: true, // 如果设为false,则jqGrid在解析json时,会根据name来搜索对应的数据元素(即可以json中元素可以不按顺序);而所使用的name是来自于colModel中的name设定。      cell: "cell",      id: "id",      userdata: "userdata",      subgrid: {          root:"rows",           repeatitems: true,           cell:"cell"      }  }  

参考文章:http://blog.csdn.net/lijiangjava/article/details/52170106

原创粉丝点击