struts2+dojo实现datagrid
ACTION:
package test.action; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionSupport; public class JSONDataAction extends ActionSupport {
private String identifier="name";
private String label="name";
private List<Map<String,Object>> items=new ArrayList<Map<String,Object>>(); public JSONDataAction(){
items.clear();
Map<String,Object> mapItem=null;
for(int i=0;i<15;i++)
{
mapItem=new HashMap<String,Object>();
mapItem.put("name", "name"+i);
mapItem.put("baseFlavor", "banana"+i);
mapItem.put("mixins", "fudge"+i);
mapItem.put("calories", 280+i);
mapItem.put("fat", 16+i);
mapItem.put("source", 1+i);
mapItem.put("rating", 3+i);
items.add(mapItem);
}
} public String execute(){
return this.SUCCESS;
}
public String getIdentifier() {
return identifier;
}
public void setIdentifier(String identifier) {
this.identifier = identifier;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public List<Map<String,Object>> getItems() {
return items;
}
public void setItems(List<Map<String,Object>> items) {
this.items = items;
}
}
struts.xml(注意package要继承json-default):
<package name="jsontest" extends="json-default">
<action name="getJSONResult" class="test.action.JSONDataAction">
<result type="json" />
</action>
</package>
JSP(DOJO的版本是:1.10.4):
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>One Subrow</title>
<style type="text/css">
@import "dojoroot/dijit/themes/tundra/tundra.css";
@import "dojoroot/dojox/grid/resources/tundraGrid.css";
</style>
<script type="text/javascript" src="dojoroot/dojo/dojo.js" djConfig="parseOnLoad: true"></script> <script type="text/javascript">
dojo.require("dojox.grid.DataGrid");
dojo.require("dojo.data.ItemFileReadStore");
dojo.require("dojo.data.ItemFileWriteStore")
</script>
</head>
<body class="tundra"> <span dojoType="dojo.data.ItemFileReadStore"
jsId="icStore" url="getJSONResult.action">
</span>
<div align="center" >
<table id="grid" dojoType="dojox.grid.DataGrid"
store="icStore"
clientSort="true"
style="width: 800px; height: 200px;">
<thead>
<tr>
<th field="name">Flavor</th>
<th field="baseFlavor" >Base Flavor</th>
<th field="calories" >Calories</th>
<th field="fat" >Fat</th>
<th field="mixins">Mixins</th>
<th field="source" >Source</th>
<th field="rating">Rating</th>
</tr>
</thead>
</table>
</div> </body>
效果:
struts2+dojo实现datagrid的更多相关文章
- struts2+dojo实现datagrid动态刷新
实现一个普通的数据库查询功能,参考了这个帖子:http://stackoverflow.com/questions/5499453/how-to-refresh-datagrid 需要注意的是动态创建 ...
- struts2 easyui实现datagrid的crud
最近两天因为项目需要,接触了easyui,要用它的datagrid实现crud.第一次做,花了一天时间才完成所有功能,昨天做另外一个模块,同样的功能只用了两个小时. 现在把第一次做datagrid时遇 ...
- struts2+jquery+easyui+datagrid+j…
一.概述 struts2提供了针对json的插件支持.常规来讲我们将如何将对象数组转成json对象在客户端直接调用呢?尤其和jquery的easyui插件配合使用,这个可能会有很多的问题需要我们解决. ...
- easyUI datagrid 分页参数page和rows
Struts2获取easyUI datagrid 分页参数page和rows 用pageHelper分页时,只要是能够获取前台传来的两个参数page和rows基本就完成了很大一部分. 获取方法:定义两 ...
- 在Strust2 使用datatimepicker 标签引发的一系列问题
问题:出现无法识别的问题 原因:Strust2.1开始,对于ajax类的标签不再使用<%@ taglib prefix="s" uri="/struts-tags& ...
- struts 2.1.8.1的sx:datetimepicker标签出现NaN错误的原因和解决办法
作者:Junsan.Jin 邮箱:junsanjin@gmail.com QQ:1305896503 本文原始地址:http://www.rsky.com.cn/Article/java/201 ...
- dojo DataGrid实现表格数据编辑的解决方案
在官网上看见的DataGrid编辑非常简单,但我实现的时候总是出现问题.经过N久的摸索,终于搞定了,期间出现了多处困难,下面说些解决办法的流程. 我实现的表格在页面加载时是不显示数据,只有通过表单像服 ...
- dojo Datagrid 实现数据删除功能
DataGrid实现数据动态刷新功能见前一个帖子:http://www.cnblogs.com/qq552048250/p/4447103.html 实现数据删除只需要向表格中动态添加按钮,并为按钮的 ...
- Struts2+Datagrid表格显示(可显示多表内容)
概述 最近学到EasyUI的Datagrid数据网格,然后就做了一个小例子,中间层利用Struts2来完成,DAO层用的是Hibernate. 数据库 数据库涉及到stuednt(name,noid, ...
随机推荐
- thinkphp5.1学习笔记
由于新公司使用的框架是thinkphp5.1,有必要进一步学习,看来我要把php框架使用完全了,之前就用过laravel和CI框架了. 现在打算只是一个学习的记录,结构会比较凌乱,基本我估计只能自己看 ...
- GIL 相关 和进程池
#GIL (global interpreter Lock) #全局解释器锁 :锁是为了避免资源竞争造成数据错乱 #当一个py启动后 会先执行主线程中的代码#在以上代码中有启动了子线程 子线程的任务还 ...
- Linux运维命令总结(-)
Linux运维命令总结(-) 此次整理linux运维常用命令13个,常用linux运维命令大概有150个,约占百分之十,大牛见笑,本人菜鸟一枚不才整理如下,如有不正确之处,请多多指正. 1.创建目录 ...
- Day13作业及默写
1. 整理今天的博客,写课上代码,整理流程图. 博客链接--博客园 2. 写一个函数完成三次登陆功能: 用户的用户名密码从一个文件register中取出. register文件包含多个用户名,密码,用 ...
- Python 命名元组
from collections import namedtuple # 类 p = namedtuple("Point", ["x", "y&quo ...
- 内存直读技术DMA
DMA(Direct Memory Access) DMA(Direct Memory Access)即直接存储器存取,是一种快速传送数据的机制. 工作原理 DMA是指外部设备不通过CPU而直接与系统 ...
- linux下开启oracle服务和开启监听
su - oracle 切换到oracle用户模式下 sqlplus /nolog //登录sqlplus SQL> connect /as sysdba //连接oracle SQL&g ...
- libev
libev是一个**事件驱动库**,它需要循环探测事件是否发生,在Linux上实际是封装了epoll等系统调用. 其循环过程由ev_loop( )函数设置,循环体是ev_loop结构. //创建事件循 ...
- i.MX6 设备树 GPIO 默认值
/********************************************************************** * i.MX6 设备树 GPIO 默认值 * 说明: * ...
- 【重要】NOI-1.2-10-字符串大小
10:Hello, World!的大小 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 还记得在上一章里,我们曾经输出过的“Hello, World!”吗? ...