- 浏览: 527604 次
- 来自: ...
-
最新评论
-
alick24:
不能下载呢
基于easyui的仓库管理系统 -
eddie_lau:
...
基于easyui的仓库管理系统 -
zxygww:
非常强大的项目,可以直接运行
基于easyui的仓库管理系统 -
big3333:
表格是合并了,但是序号没有合并,有没有办法处理序号合并,翻页b ...
在datagrid的表格体中合并单元格 -
nacco:
有没有一个默认的Controller?用www.xxx.com ...
利用etmvc再来写个小例子
利用easyui编写一个用户管理小例子,目的是演示CRUD操作。先看一下效果图:
1、表格的定义:
<table id="user-table"> <thead> <tr> <th field="name" width="100">名称</th> <th field="phone" width="100">电话</th> <th field="addr" width="100">地址</th> <th field="duty" width="100">职务</th> </tr> </thead> </table>
利用表格的THEAD来定义列,field属性对应用户数据模型的字段名称。
接着用jQuery创建表格,同时创建一个操作工具栏:
grid = $('#user-table').datagrid({ url:'/demo1/user/getUsers', title:'用户资料', width:600, height:300, singleSelect:true, toolbar:[{ text:'新增', iconCls:'icon-add', handler:newUser },'-',{ text:'修改', iconCls:'icon-edit', handler:editUser },'-',{ text:'删除', iconCls:'icon-remove' }] });
2、定义用户信息窗口和表单
<div id="user-window" title="用户窗口" style="width:400px;height:250px;"> <div style="padding:20px 20px 40px 80px;"> <form method="post"> <table> <tr> <td>名称:</td> <td><input name="name"></input></td> </tr> <tr> <td>电话:</td> <td><input name="phone"></input></td> </tr> <tr> <td>地址:</td> <td><input name="addr"></input></td> </tr> <tr> <td>职务:</td> <td><input name="duty"></input></td> </tr> </table> </form> </div> <div style="text-align:center;padding:5px;"> <a href="javascript:void(0)" onclick="saveUser()" id="btn-save" icon="icon-save">保存</a> <a href="javascript:void(0)" onclick="closeWindow()" id="btn-cancel" icon="icon-cancel">取消</a> </div> </div>
可以看到,窗口是一个DIV,表单是一个FORM,这种创建方式具有极大的灵活性,不需要学习成本,创建的jQuery代码如下:
$('#btn-save,#btn-cancel').linkbutton(); win = $('#user-window').window({ closed:true }); form = win.find('form');
其中建立了窗口的操作按钮,并获取表单对象。
3、进行CRUD操作的客户端代码:
function newUser(){ win.window('open'); form.form('clear'); form.url = '/demo1/user/save'; } function editUser(){ var row = grid.datagrid('getSelected'); if (row){ win.window('open'); form.form('load', '/demo1/user/getUser/'+row.id); form.url = '/demo1/user/update/'+row.id; } else { $.messager.show({ title:'警告', msg:'请先选择用户资料。' }); } } function saveUser(){ form.form('submit', { url:form.url, success:function(data){ eval('data='+data); if (data.success){ grid.datagrid('reload'); win.window('close'); } else { $.messager.alert('错误',data.msg,'error'); } } }); } function closeWindow(){ win.window('close'); }
例子中使用etmvc框架来处理后台的数据,演示例子中不使用数据库。
定义用户数据模型:
public class User { public Integer id; public String name; public String phone; public String addr; public String duty; public User clone(){ User u = new User(); u.id = id; u.name = name; u.phone = phone; u.addr = addr; u.duty = duty; return u; } }
定义后台用户的CRUD操作:
public class UserController extends ApplicationController{ /** * 返回全部用户资料 */ public View getUsers() throws Exception{ Map<String,Object> result = new HashMap<String,Object>(); result.put("total", users.size()); result.put("rows", users); return new JsonView(result); } /** * 取得指定的用户资料 */ public View getUser(Integer id) throws Exception{ User user = users.get(id-1); return new JsonView(user); } /** * 保存用户资料,这里对用户名称进行非空检验,仅供演示用 */ public View save(User user) throws Exception{ Map<String,Object> result = new HashMap<String,Object>(); if (user.name.length() == 0){ result.put("failure", true); result.put("msg", "用户名称必须填写。"); } else { result.put("success", true); user.id = users.size()+1; users.add(user); } View view = new JsonView(result); view.setContentType("text/html;charset=utf-8"); return view; } /** * 更新指定的用户资料 */ public View update(Integer id) throws Exception{ Map<String,Object> result = new HashMap<String,Object>(); User user = users.get(id-1).clone(); updateModel(user); if (user.name.length() == 0){ result.put("failure", true); result.put("msg", "用户名称必须填写。"); } else { result.put("success", true); user.id = id; users.set(id-1, user); } View view = new JsonView(result); view.setContentType("text/html;charset=utf-8"); return view; } // 用户资料测试数据 private static List<User> users = new ArrayList<User>(); static{ for(int i=1; i<10; i++){ User user = new User(); user.id = i; user.name = "name" + i; user.phone = "phone" + i; user.addr = "addr" + i; user.duty = "duty" + i; users.add(user); } } }
完整的代码请见附件,可以看到,easyui具有极少的JS代码。
评论
19 楼
kjj
2010-01-26
没前途??? 不敢苟同,ext 你看看 jq 你再看看,flex等ria虽然出来好久了,但是应用并没有展开,flex放互联网上的性能问题至少现在还没看见杀手级解决方案,sliverlight 更面临着跨平台问题,gwt嘛,没觉得有多么火爆!!
18 楼
eserver220
2010-01-25
Web2 就像java web开发是基于 MVC方式还是组件方式的JSF一样。每个人都在重复发明轮子。应用开发人员在上面投入过多精力实在是无奈。
我不敢小视楼主的实现。 只是觉得web2的开发方式采用javascript的封装方式,似乎没有啥前途。我目前看好的还是flex/silverlight两种技术。
至于javascript实现嘛,我看国外的echo和国产的longboo是不错的选择。
如果作为一种技术来学习,我会选择GWT。
一家之言,见笑。
17 楼
stworthy
2010-01-25
mayufenga1 写道
form.url="demo/use/update"这个地址不知道从那来的
例子中应该是editUser函数中的语句:form.url = '/demo1/user/update/'+row.id;
作用是存储一个用于更新保存时的URL,这样在saveUser函数中就可以直接引用这个变量。
16 楼
mayufenga1
2010-01-25
form.url="demo/use/update"这个地址不知道从那来的
15 楼
stworthy
2010-01-25
tree动态加载时向服务器传递参数是展开节点的id。
基本的DEMO用法已经有了,文档正在编写,暂时放在jquery-easyui.wikidot.com上。
tree的API是少了些,我只是按照最基本的写上去。
大家可以提一些好的需求啊,这样确定出来的API或者会更好些。
基本的DEMO用法已经有了,文档正在编写,暂时放在jquery-easyui.wikidot.com上。
tree的API是少了些,我只是按照最基本的写上去。
大家可以提一些好的需求啊,这样确定出来的API或者会更好些。
14 楼
zlowly
2010-01-24
其它还好,但tree好像还不太够用,而且没文档。
PS:tree能由自己否定义method的方式,不要固定死post啊。
PS:tree能由自己否定义method的方式,不要固定死post啊。
13 楼
gundumw100
2010-01-24
老兄,你的http://www.etmvc.cn/project/show/61是不是关了?打不开了
12 楼
andy_zm
2010-01-24
代码很简练 先收下了...
11 楼
kjj
2010-01-24
已经有网站了,我错了,等待成型,tree控件的方法太少啊,文档也有待丰富,还有,没看出来那个ajaxtree怎么向服务器传递node的参数,请楼主指教,当前有个项目想用一下easyui
10 楼
kjj
2010-01-24
界面清新简洁,楼主何不做出个开源的jquery插件提交到jq网站上发布呢!!这样也可以扩大你的影响!!
9 楼
nishijia
2010-01-24
LZ的 tree组件 为什么节点上只有onClick一个方法 能否加个 onDblClick 呢
8 楼
happysoul
2010-01-23
引入代码相比Ext是小了不少,不过估计是在功能上相差的部分表现出来的
一直再考虑是否用Ext做客户端的东西 后来觉得应该放弃这想法
毕竟网络垃圾的。。。下载JS的东西要等...等...等...
再就是和框架整合也是个问题
不过楼主的demo看上去还是不错的
一直再考虑是否用Ext做客户端的东西 后来觉得应该放弃这想法
毕竟网络垃圾的。。。下载JS的东西要等...等...等...
再就是和框架整合也是个问题
不过楼主的demo看上去还是不错的
7 楼
wdpyyxal
2010-01-23
程序员是有的学啊!
6 楼
huangxiang
2010-01-23
简单学习一下,现在EXT很火啊
5 楼
jingrenlang
2010-01-23
一直都在等待成型····
4 楼
lucky16
2010-01-23
确实很不错的东西阿!我也先收下了
3 楼
dieslrae
2010-01-22
代码很像ext的组织方式
2 楼
anone
2010-01-21
赞一个,楼主的jquery布局插件已经用在项目中,tabs插件还有问题,不能动态添加url的内容,所以没有使用,现在这个更是强大了,收下先...3Q
1 楼
andybrier3
2010-01-21
Thanks!
发表评论
-
在easyui中利用DataGrid的行明细区域实现CRUD操作
2011-06-20 17:42 13652在easyui中,DataGrid可以通过detailview ... -
在easyui中展开DataGrid的行,显示明细数据
2011-06-20 17:24 40647easyui中的DataGrid可以切换不同的视图,当使用de ... -
在EasyUI中创建分组属性编辑器
2011-05-05 11:53 9440属性编辑器propertygrid支持分组显示,创建的时候可以 ... -
采用EasyUI制作入库单操作界面
2011-04-12 11:51 15175采用EasyUI可以方便制作入库单的操作界面,先看看图: 1 ... -
datagrid中使用合计行
2010-12-23 16:28 8890datagrid中可以使用合计行显示汇总信息,合计行可以是多行 ... -
jquery-easyui中自定义DataGrid的视图
2010-10-21 14:25 20027在DataGrid中自定义视图可以帮助我们做各种个性化的显示方 ... -
利用TreeGrid做简单数据报表
2010-09-02 10:46 6254jquery-easyui中的TreeGrid继承DataGr ... -
jquery-easyui中自定义下拉框列表项格式
2010-08-24 15:27 10419下拉框的列表项一般为一行文本,但实际上可以是任何HTML,所以 ... -
在datagrid的表格体中合并单元格
2010-07-08 11:22 5665jquery-easyui的datagrid具有创建复杂表头和 ... -
jquery-easyui中表格的行编辑功能
2010-06-10 17:21 97770datagrid现在具有行编辑能力了,使用时只须在column ... -
jquery-easyui中实现课程表拖放效果
2010-05-28 09:17 7683利用jQuery EasyUI可以很容易就实现学校课程表的拖放 ... -
jquery-easyui中创建带复选框的树
2010-05-24 18:24 8249easyui可以创建带复选框的树,只要带上选项checkbox ... -
jquery-easyui的拖放购物车范例
2010-05-24 11:58 6387利用easyui的拖放能力可以轻松创建购物车,看一个例子: ... -
jquery-easyui中的表单验证
2010-03-22 17:55 10082jQuery EasyUI中进行表单验证主要是通过valida ... -
jquery-easyui中添加树节点
2010-03-08 12:17 5023jquery-easyui中的树具备基本的CRUD能力,添加节 ... -
jquery-easyui中创建复杂的布局效果
2010-02-24 17:42 11351jquery-easyui中利用panel, layout等插 ... -
基于jquery-easyui的机电设备管理系统布局新范例
2010-02-05 14:53 11095使用jquery-easyui的新版本 ... -
jquery-easyui中为datagrid加入分页功能
2010-02-01 16:44 19965jquery-easyui中使用datagrid来加载远程数据 ... -
jquery-easyui中轻松转换html table
2010-01-31 11:02 6134jquery-easyui中将html table转换成dat ... -
jquery-easyui中创建Window窗口
2010-01-30 11:07 32253jquery-easyui中创建窗口很简单,建立一个DIV就行 ...
相关推荐
在描述中提到“很漂亮”,这可能是指jQuery EasyUI提供的默认主题和组件设计风格,它们通常具有专业的外观和用户体验,可以为后台管理系统增添现代化和专业感,无需开发者过多关注界面设计细节。 使用jQuery EasyUI...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列易于使用的组件,如对话框、表格、树形控件等,帮助开发者快速构建用户界面。在本案例中,我们讨论的是如何利用 jQuery EasyUI 实现一个多级树导航菜单...
在“jQuery EasyUI 项目(毕业设计)”中,我们可以看到一个实际应用的例子,它是用 EasyUI 构建的一个客户关系管理(CRM)系统,名为“ZhangZhuCRM”。这个项目展示了如何将 EasyUI 的组件整合到实际业务场景中,为...
**jQuery EasyUI学习例子** jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列轻量级、易于使用的组件,帮助开发者快速构建具有专业界面的Web应用。在这个"JQuery EasyUI学习例子"中,我们将深入探讨...
EasyUI 是一个基于 jQuery 的前端框架,主要用于快速构建用户界面,尤其适用于后台管理系统。这个"easyUI例子_easyui1.4.4"压缩包提供了一套使用 EasyUI 1.4.4 版本的经典后台管理模板,适用于开发人员快速搭建功能...
本项目实例——"spring3 mvc + mybatis + jquery easyui例子",就是这样一个典型的案例,它利用Spring3 MVC作为后端MVC框架,MyBatis作为持久层解决方案,jQuery EasyUI作为前端界面库,共同打造了一个基础的用户、...
在提供的资源包中,可能包含了一个已经配置好并可以运行的示例项目,包括数据库脚本、Spring MVC的配置文件、MyBatis的Mapper和实体类、以及使用JQueryEasyUI编写的前端页面。这样的例子可以帮助初学者快速理解这三...
jQuery EasyUI 1.3.3 是一个基于 jQuery 的轻量级前端开发框架,它提供了丰富的用户界面组件,如对话框、表格、菜单、表单等,极大地简化了Web应用程序的开发工作。这个源码包包含了未混淆的代码,使得开发者能够...
描述中提到 "struts1.3+spring2+Hibernate json,easyui datagird 学习easyui 做的一个小例子" 指出这个项目是使用Struts1.3作为MVC框架,Spring2处理依赖注入和事务管理,Hibernate作为ORM框架来操作数据库,而JSON...
EasyUI 是一个基于 jQuery 的轻量级前端框架,它提供了丰富的组件和易于使用的API,用于构建数据驱动的Web应用。这个“easyui增删改很好的例子”是一个实用的学习资源,展示了如何利用EasyUI来实现数据的添加、删除...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它简化了网页开发,提供了丰富的用户界面组件,如数据网格、下拉树、对话框等。版本 1.5.1 是该框架的一个稳定版本,提供了多样的增强功能和改进。中文API文档是开发者...
在JavaScript的世界里...总的来说,jQuery和jQuery EasyUI为开发人员提供了强大的工具来创建具有高度定制性和用户体验的弹出框和提示框。通过学习和实践这些实例,你可以提升网页的交互性和专业性,更好地服务于用户。
**jQuery EasyUI 知识点详解** jQuery EasyUI 是一个基于 jQuery 的轻量级前端框架,它提供了一系列的 UI 组件,使得开发者可以快速构建出美观且功能丰富的 Web 应用程序。EasyUI 提供了诸如窗口、表格、下拉菜单、...
jQuery EasyUI 是一款基于 jQuery 的前端开发框架,它简化了网页UI组件的开发,使得开发者可以快速构建用户界面。这个1.3版本的中文帮助手册是开发者的重要参考资料,旨在提供全面、详细的API文档和使用教程。 ...
在这个例子中,我们主要使用了jQuery EasyUI中的`easyui-datagrid`组件。该组件允许我们将数据以表格的形式展示在网页上,并且支持分页、排序、过滤等高级功能。 接下来的知识点是JSP页面的编写。JSP(JavaServer ...
在IT行业中,前端开发是构建用户界面的关键环节,而EasyUI和jQuery是两个非常流行的JavaScript库,它们大大简化了Web应用程序的开发。本教程将深入探讨如何结合EasyUI实现用户验证,以及如何扩展jQuery控件验证功能...
EasyUI 是一款基于 jQuery 的 UI 组件库,它提供了丰富的界面元素和布局功能,使得开发者能够快速构建出美观且响应式的 web 应用程序。"全套EasyUI示例源码"是一个包含三十多个组件的完整示例集合,可以帮助开发者...
在jQuery的基础上,EasyUI进一步提供了诸如对话框、表格、表单、菜单、按钮等常见的UI组件,使得开发者无需从零开始编写复杂的CSS和JavaScript代码,即可快速实现复杂的界面布局和交互。 在《最新jQuery EasyUI ...
1. **依赖管理**:确保正确引入jQuery和EasyUI的JS库,以及相关的CSS文件,以保证所有组件能正常工作。 2. **组件使用**:EasyUI提供了许多组件,如`datagrid`(数据网格)、`dialog`(对话框)、`tabs`(选项卡)、...
这个“easyui-例子”压缩包中的jQueryEasyUI文件夹很可能包含了一系列示例HTML文件,演示了如何使用EasyUI的各种组件和功能。通过查看和运行这些例子,学习者可以直观地了解每个组件的工作方式以及如何在实际项目中...