这2个月刚换单位,比较赶进度.很久不更新blog,今天抽空看了一下jqGrid,因为现在工作环境又迁到java了,但是是1.4的呵呵,所以封装了一个jqGrid的数据源,方便使用
ps: 需要json-simple
点我
package com.javaeye.rikugun.jqGrid;
import java.io.IOException;
import java.io.Writer;
import java.util.LinkedList;
import java.util.List;
import org.json.simple.JSONAware;
import org.json.simple.JSONObject;
import org.json.simple.JSONStreamAware;
/**
* jqGrid 的数据源类
*
* @author rikugun
*
*/
public class JqGridDataSource implements JSONAware, JSONStreamAware {
private int records = 0;
private int page = 0;
private int total = 0;
private List rows = new LinkedList();
private JSONObject json = new JSONObject();
/**
* 添加一行记录
*
* @param row
* 输出的记录
* @return 当前数据源,方便链式写法 ds.add("a row").add("other row");
*/
public JqGridDataSource addRow(String row) {
rows.add(row);
return this;
}
/**
* 添加一行记录
*
* @param obj
* JSON对象,转换成字符串
* @return 当前数据源,方便链式写法 ds.add(obj1).add(obj2);
*/
public JqGridDataSource addRow(JSONObject obj) {
rows.add(obj.toJSONString());
return this;
}
/**
* 构造json对象
*/
private void build() {
json.put("records", new Integer(records));
json.put("page", new Integer(page));
json.put("total", new Integer(total));
json.put("rows", rows);
}
public int getRecords() {
return records;
}
public void setRecords(int records) {
this.records = records;
}
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public List getRows() {
return rows;
}
public void setRows(List rows) {
this.rows = rows;
}
public String toJSONString() {
build();
return json.toJSONString();
}
public void writeJSONString(Writer out) throws IOException {
build();
json.writeJSONString(out);
}
}
//usage
//..........
Map m = new LinkedHashMap();
m.put("name","rikugun");
m.put("phone","1323xxxxxxx");
JSONObject obj = new JSONObject();
obj.put("name","rikugun1");
obj.put("phone","1323xxxxxxx");
new JqGridDataSource ds = new JqGridDataSource();
ds.setPage(1);
ds.setTotal(1);
ds.add(JSONValue.toJSONString(m));
ds.add(obj);
System.out.println(ds.toJSONString());
//or
ds.writeJSONString(System.out);
//result {"page":1,"total":1,"records":2,"rows":[{"name":"rikugun","phone":"1323xxxxxxx"},{"name":"rikugun1","phone":"1323xxxxxxx"}]}
回头有空再写个1.5的
分享到:
相关推荐
jqgrid二次封装,快速加载grid表格,不改变原有的使用习惯,增加一些默认处理逻辑 var grid = $.jqGrid.init({ url: "<%=basePath%>/component/config/select.html", add: {content:"<%=basePath%>/admin/...
jqGrid数据调用实例
C#封装的JqGrid插件,配置相应的即可
第一个jqGrid例子 第一个jqGrid例子 第一个jqGrid例子
jqgrid源代码
我在一个页面上定义了3个JQGrid,一个数据通过后台传过来,另外两个的数据通过将已有数据的JQGrid的数据拖曳过来。
JQuery Mobile 中实现 jqGrid 数据分组的一个小例子 程序请放在WEB服务器上运行
jqgrid加载本地数据并且分页例子,下载直接搭环境使用
如果想要获取选择多行的id,那这些id便封装成一个id数组,那可以使用以下: var ids=$(‘#gridTable').jqGrid(‘getGridParam','selarrrow'); 如果想获取选择的行的数据,只要传入rowId即可,如下: var rowData = $...
jqGrid 学习 原理 2 jqGrid 学习之 皮肤 2 jqGrid 学习 2 jQuery 学习之:jqGrid 表格插件 参数...jqGrid 学习 第一个实例 63 使用 jqGrid 修改数据并检查 69">jqGrid 学习 原理 2 jqGrid 学习之 皮肤 2 jqGrid [更多]
在ASP.NET 下的jqgrid 的示例
本Demo利用Jquery的jqgrid插件利用本地资源数据,实现分页。
NULL 博文链接:https://thinkgem.iteye.com/blog/2145125
jquery.jqGrid-4.6.0(jquery表格插件).zip----------jqGrid4.6.0包,官网下载的,原封不动的在这里。 jqgrid_demo40-----可用的-使用方法请查看README文件.rar-----------经我修改过的demo40,官网上面demo40下载...
jqgrid加载本地数据并且分页例子
jqgrid
1、jqGrid使用XML做數據源。 2、簡單明瞭一看就明白。 3、使用的是jqGrid最新版本4.3。
本程序利用Jqgrid实现本地数据的分页!
jqGrid表格数据展示插件,可以做出很多很炫酷的效果,你值得拥有
jquery.jqGrid-4.8.2(jquery表格插件).zip----------jqGrid4.8.2包,官网下载的,原封不动的在这里。 jqgrid_demo40-----可用的-使用方法请查看README文件. jqgrid_3.6.5_API_en.chm------附加放在这里的其它资料...