struts配置文件:使用jsonplugin将属性转换成json对象,extends="json-default" result type要为json
root 是只返回该内容,resultObj与action的属性名字一样,即要返回给页面的值
<package name="bps" extends="json-default">
<action name="bps" class="com.alik.bps.action.BpsAction" method="findBps">
<result type="json">
<param name="root">resultObj</param>
</result>
</action>
<action name="msg" class="com.alik.bps.action.MsgAction" method="findMsg">
<result type="json">
<param name="root">resultObj</param>
</result>
</action>
</package>
action中方法
private JSONObject resultObj;//此处定义为JSONObject是因为datagrid默认接收的为json对象而不是json字符串,如果定义为string 类型的页面读取数据时会报错,我之前报错为rows is not defined
此处省略resultObj的set\get方法
public String findMsg() throws Exception
{
Map map = new HashMap();
ArrayList al = new ArrayList();
for(int i=0;i<3;i++)
{
Map m = new HashMap();
m.put("itemid", String.valueOf(i));
m.put("mction", "a");
al.add(m);
}
map.put("total", 3);
map.put("rows", al);
resultObj=JSONObject.fromObject(map); //将map对象转换成为json对象
System.out.println(resultObj);
return SUCCESS;
}
页面
$('#inVariables').datagrid({
rownumbers:true,
title:'输入',
height:200,
singleSelect:false,
idField:'itemid',
url:'msg.action',
queryParams:{"ComKey":"","SvcKey":""},
columns:[[
{field:'ck',checkbox:true},
{field:'itemid',title:'Item ID',width:100,align:'right',
editor:{
type:'text'},
formatter:function(value){
return '<a href="http://blog.163.com/luckcq@yeah/blog/#" onclick="insertAtCaret('+value+')">'+value+'</a>';
}
},
{field:'mction',title:'Action',width:100,align:'center',
formatter:function(value,row,index){
if (row.editing){
var s = '<a href="http://blog.163.com/luckcq@yeah/blog/#" onclick="saverow('+index+',\'inVariables\')">保存</a> ';
var c = '<a href="http://blog.163.com/luckcq@yeah/blog/#" onclick="cancelrow('+index+',\'inVariables\')">取消</a>';
return s+c;
} else {
var e = '<a href="http://blog.163.com/luckcq@yeah/blog/#" onclick="editrow('+index+',\'inVariables\')">修改</a> ';
var rowid;
if(row.itemid=='')
{
rowid='null';
}
else
rowid=row.itemid;
var d = '<a href="http://blog.163.com/luckcq@yeah/blog/#" onclick="deleterow('+index+',\'inVariables\','+rowid+')">删除</a>';
return e+d;
}
}
}
]],
toolbar:[{
text:'增加行',
iconCls:'icon-add',
handler:function(){
addRow('inVariables');
}
},{
text:'删除多行',
iconCls:'icon-cut',
handler:function(){deleteRows('inVariables');}
}],
onBeforeEdit:function(index,row){
row.editing = true;
$('#inVariables').datagrid('refreshRow', index);
},
onAfterEdit:function(index,row){
row.editing = false;
$('#inVariables').datagrid('refreshRow', index);
},
onCancelEdit:function(index,row){
row.editing = false;
$('#inVariables').datagrid('refreshRow', index);
},
onClickRow:function(index,row){
newDG(row);
}
});
PS:This blog is copy form the web, some of the contents is not correct, just paste on my blog for further reference
分享到:
相关推荐
struts2+ajax+easyui+json+datagrid增,删,改,查,分页,排序,有数据库
jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) Demo 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停离开事件,源码奉献!!!
uploadfy+easyui+struts+json文件上传 利用uploadfy、easyui、struts和json技术实现文件上传 其中只在action中模拟接收文件,存储文件到指定目录,但是没有跟数据库打交道。 但是这个跟数据库打交道的问题,大家很...
jquery easyui demo 网页下载下来打包了,还有datagrid简要说明
jquery easyUI+struts2+spring+hibernate基于annotation实现的CRM
easyui datagrid+SSH集成项目问题总结,史上最清楚的讲解
struts2+hibernate3+mysql+jqueryeasyui1.3+myeclipse8.0 实现了用户信息分页,增删改操作,内有sql语句,项目直接导入就行了,适合初学者练练手 欢迎继续修改
jqueryeasyui+struts+spring+hibernate的整合,前台到后台完整的代码,事务配置,完整的jar包,可直接使用。
php+easyui DataGrid+ajax实例开发 完成数据库的增删查改
struts2+easyUI+ajax+json用户登验证,代码没问题,可运行,适合初学者理解原理!
easyui的一个例子,我自己写的,肯定好使
EasyUI datagrid+tree右键+window弹出层综合运用
JQueryEasyui1.3.6+电子书文档+14套主题
jQuery+EasyUI+1.2.4+API+中文文档
本文给大家分享jQuery EasyUI编辑DataGrid用combobox实现多级联动效果的实例代码,代码简单易懂,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
jquery easyui datagrid 性能优化,优化后可快速提升查询性能。唯一的缺陷就是不支持可编辑grid了。只需要在引入easyui.js后面引入此js即可。
jQuery+EasyUI\jQuery+EasyUI+1.2.4+API+中文文档
最新的jquery easyui 1.3.4 + 中文API
本工程实现了springmvc+mybatis+jquery easyui+json+log4j整合开发,jar包齐全可直接二次开发,本项目已通过测试。
jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。