001、点击链接添加局部div
<a href="xxx.action?param1=x1¶m1=2" target="ajax" rel="ExchangeBox"><%=zw.getZwmc() %></a>
002、删除操作刷新局部div
<!--自定义ajaxTodoDone函数--> <script> function ajaxTodoDone(backUrl,divID){ $("#"+divID).loadUrl(backUrl,'',function(){ $("#"+divID).find("[layoutH]").layoutH(); }); } </script> <a class="btnDel" title="确定要删除该用户吗?" target="ajaxTodo" callback="ajaxTodoDone('xxx.action','divRel')" href="xxx.action">删除</a>
003、form表单验证
<form class="pageForm required-validate" onsubmit="return submitForm(this,navTabAjaxDone);"> <input type="text" validateCallback class="required date email url equalTo alphanumeric lettersonly phone number digits accept postcode" maxlength="" minlength="" max="" min=""/> </form>
004、文件上传
1、利用jquery
<script type="text/javascript"> $(document).ready(function() { $("#uploadify").uploadify({ /*是组件自带的flash,用于打开选取本地文件的按钮 */ 'uploader' : 'uploadify/scripts/uploadify.swf', 'script' : 'ssj/upLoad.action', /*额外参数*/ 'scriptData':{ 'navTabId':'page41','callbackType':'closeCurrent', 'ajax':'1','user.userid':'${user.userid}' }, /*取消上传文件的按钮图片,就是个叉叉 */ 'cancelImg' : 'uploadify/cancel.png', /*和input的name属性值保持一致就好,Struts2就能处理了*/ 'fileDataName' : 'file', 'queueID' : 'fileQueue', 'auto' : true,//是否选取文件后自动上传 'multi' : false,//是否支持多文件上传 'simUploadLimit' : 1,//每次最大上传文件数 'queueSizeLimit' : 50, 'removeCompleted' :false, 'buttonImg':'uploadify/choose.png', /*有speed和percentage两种,一个显示速度,一个显示完成百分比 */ 'displayData' : 'percentage', /*如果配置了以下的'fileExt'属性,那么这个属性是必须的*/ 'fileDesc' : '*.bmp;*.gif;*.png;*.jpeg;*.jpg;*.pjpeg;*.x-png;', /*允许的格式*/ 'fileExt' : '*.bmp;*.gif;*.png;*.jpeg;*.jpg;*.pjpeg;*.x-png;', 'onComplete': function(event, queueID, fileObj,serverData,data) { /* var json=eval(serverData); dialogAjaxDone(serverData);*/ var json=eval('('+serverData+')'); dialogAjaxDone(json); } }); }); //function showResult() {//删除显示的上传成功结果 // $("#result").html(""); //} function uploadFile() {//上传文件 jQuery('#uploadify').uploadifyUpload(); } function clearFile() {//清空所有上传队列 jQuery('#uploadify').uploadifyClearQueue(); } </script> <div style=" text-align:left; padding-left:20px;padding-top:5px;"> <div id="fileQueue"></div> <input type="file" name="file" id="uploadify"/> </div>
2、dwz 的iframeCallback();
<form method="post" action="Exchange_addQyexchange.action? navTabId=page51&callbackType=closeCurrent&ajax=1" class="pageForm required-validate" onSubmit="return iframeCallback(this, navTabAjaxDone);" enctype="multipart/form-data"> <input type="file" name="file" /> </form>
005、刷新navTab
form提交刷新
<form method="post" action="Exchange_modefyInfo.action? navTabId=page51& callbackType=closeCurrent" class="pageForm required-validate" onsubmit="return validateCallback(this, navTabAjaxDone);" >
链接<a>提交刷新
<a title="您确定要删除么?" target="ajaxTodo" href="xxx.action" class="btnDel" >删除</a>
006、日历插件
调整日历选择范围
/*dwz.datepicker.js*/ var Datepicker = function(sDate, opts) { this.opts = $.extend({ pattern:'yyyy-MM-dd', yearstart:-80, yearend:10 }, opts); this.sDate = sDate.trim(); }
007、弹窗传值
008、列表翻页
翻页工具类Pager.java
//翻页工具类Pager import java.io.Serializable; public class Pager implements Serializable{ //用来标记是navTab上的分页还是dialog上的分页 private String targetType; //总条数 private Integer totalCount; //每页显示多少条 private Integer numPerPage; // 页标数字多少个 private Integer pageNumShown; //当前是第几页 private Integer currentPage; public Pager(){this.numPerPage = 10;} public Pager(String targetType,Integer totalCount,Integer numPerPage, Integer pageNumShown,Integer currentPage){ this.targetType = targetType; this.totalCount = totalCount; this.numPerPage = numPerPage; this.pageNumShown = pageNumShown; this.currentPage = currentPage; } public String getTargetType() { return targetType;} public void setTargetType(String targetType) { this.targetType = targetType;} public Integer getTotalCount() { return totalCount;} public void setTotalCount(Integer totalCount) { this.totalCount = totalCount;} public Integer getNumPerPage() { return numPerPage;} public void setNumPerPage(Integer numPerPage) { this.numPerPage = numPerPage;} public Integer getPageNumShown() { return pageNumShown;} public void setPageNumShown(Integer pageNumShown) { this.pageNumShown = pageNumShown;} public Integer getCurrentPage() { return currentPage;} public void setCurrentPage(Integer currentPage) { this.currentPage = currentPage;} }
翻页工具类SplitPageUtil.java
public class SplitPageUtil { public static String getLimitStr(Pager page){ StringBuffer pagingSelect = new StringBuffer(); //获取起始页行 int startCount = 0; if(page.getCurrentPage() == 1){ startCount = 0; }else{ startCount = (page.getCurrentPage()-1)*page.getNumPerPage(); } //取的数据行数 pagingSelect.append(" LIMIT "); pagingSelect.append(startCount+","+page.getNumPerPage()); return pagingSelect.toString(); } }
业务逻辑 Action
//注入分页属性 private Pager pager; private String pageNum; public String showList() { //获取前台参数 String param= getRequest().getParameter("xxx"); //保存前台参数 getRequest().setAttribute("begin", begin); Map<String, Object> map = new HashMap<String, Object>(); //设置查询条件 map.put("xxx",xxx); // 分页信息设置 String numPerPage = request.getParameter("numPerPage"); if(pager == null){ pager = new Pager(); } if(pageNum != null && !"".equals(pageNum)){ pager.setCurrentPage(Integer.valueOf(pageNum)); }else{ pager.setCurrentPage(1); } if(numPerPage != null && !"".equals(numPerPage)){ pager.setNumPerPage(Integer.valueOf(numPerPage)); } String split = SplitPageUtil.getLimitStr(pager); map.put("split", split);//limit start,end //获得实体list //获得count pager.setTotalCount(count); return SUCCESS; }
<!--翻页form--> <form id="pagerForm" onsubmit="return navTabSearch(this);" action="xxx.action" method="post"> <input type="hidden" name="pageNum" value="1" /> <input type="hidden" name="numPerPage" value="${pager.numPerPage}" /> <!--自定义参数值--> </form> <!--翻页条--> <div class="panelBar" > <div class="pages"> <span>显示</span> <select name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value})"> <s:iterator value="{10,20,50}" var="s" status="a"> <s:if test="#s==pager.numPerPage"> <option value="${s}" selected="selected">${s}</option> </s:if> <s:else> <option value="${s}">${s}</option> </s:else> </s:iterator> </select> <span>共${pager.totalCount}条</span> </div> <div class="pagination" targetType="navTab" totalCount="${pager.totalCount}" numPerPage="${pager.numPerPage}" pageNumShown="10" currentPage="${pager.currentPage}"></div> </div>
009、结构树
010、打开新navTab
<a class="btnEdit" title="修改用户信息" target="navTab" rel="editUserInfo" href="xxx.action">修改</a>
011、打开dialog
<a class="btnEdit" title="修改用户信息" target="dialog" rel="dialogEditUserInfo" href="xxx.action">修改</a>
012、弹出提示框
alertMsg.info("请选择需要完工的订单!");
013、 翻页
dwz:dialog翻页 <!-- 分页 --> <div class="panelBar" > <div class="pages"> <span>显示</span> <select name="numPerPage" onchange="dialogPageBreak({numPerPage:this.value})"> <c:forEach begin="10" end="40" step="10" varStatus="s"> <option value="${s.index}" ${pager.numPerPage eq s.index ? 'selected="selected"' : ''}>${s.index}</option> </c:forEach> </select> <span>共${pager.totalCount}条</span> </div> <div class="pagination" targetType="dialog" totalCount="${pager.totalCount}" numPerPage="${pager.numPerPage}" pageNumShown="1" currentPage="${pager.currentPage}"></div> </div>
015、navTab 局部翻页
<form rel="pagerForm" onsubmit="return divSearch(this,'cust_Box');" action="<%=basePath%>view/cust/search" method="post"> <!-- 分页 --> <div class="panelBar" > <div class="pages"> <span>显示</span> <select name="numPerPage" onchange="navTabPageBreak({numPerPage:this.value},'cust_Box')"> <c:forEach begin="10" end="40" step="10" varStatus="s"> <option value="${s.index}" ${pager.numPerPage eq s.index ? 'selected="selected"' : ''}>${s.index}</option> </c:forEach> </select> <span>共${pager.totalCount}条</span> </div> <div class="pagination" rel="cust_Box" totalCount="${pager.totalCount}" numPerPage="${pager.numPerPage}" pageNumShown="10" currentPage="${pager.currentPage}"></div> </div>
相关推荐
在"dwz应用实例"中,我们可以看到开发者利用DWZ框架进行实际项目开发的过程。这个实例可能包含了一系列的应用页面,展示了如何将DWZ的各个组件和功能整合到实际业务场景中。例如,可能包括登录、注册、数据表格展示...
这个开发手册针对的是DWZ 1.1.4版本,是开发者进行DWZ应用开发的重要参考资料。手册详细介绍了如何有效地利用DWZ组件和功能,提升Web应用的用户体验和交互性。 **DWZ框架的核心特性** 1. **响应式设计**:DWZ支持...
**DWZ框架控件应用程序详解** DWZ框架是一款流行的JavaScript前端开发框架,专注于构建富交互式的Web应用。它集成了大量的UI控件和实用工具,为开发者提供了便捷的开发环境,使得网页应用的界面设计与功能实现更加...
kindedito在DWZ中的应用,主要修改dwz.ui.js即可.
【DWZ+Java的简单应用】是将DWZ(Dynamic Web Zone)前端框架与Java后端技术相结合,实现了一个基础的Web应用程序。DWZ是一个基于jQuery的UI库,提供了丰富的界面组件,如表格、表单、对话框、按钮等,便于快速开发...
4. **dwz-demo**:这个部分是实际的项目文件,包含了使用dwz框架开发的各种示例页面和代码,帮助开发者了解如何在实际项目中应用dwz,以及如何与PHP进行配合。 5. **学习和实践**:对于初学者来说,通过"dwz-demo...
【标题】:“DWZ框架与ASP.NET MVC3的结合应用” 【内容】 DWZ框架,全称为“Dynamic Web Zone”,是一款基于JavaScript的前端UI框架,主要用于构建富互联网应用程序(RIA)。它提供了丰富的组件库,包括表格、...
DWZ(Design What You Want)是一款基于jQuery的国产富客户端框架,主要针对Web应用的界面设计和交互体验,被称作“jUI”。这个框架旨在简化网页开发过程,提供了一系列组件和工具,使得开发者能够快速构建功能丰富...
本主题探讨的是开源框架DWZ与微软的ASP.NET MVC3的整合应用,这是一套强大的组合,能帮助开发者构建功能丰富的Web应用。下面我们将深入探讨这两个组件的核心特性以及它们如何协同工作。 首先,让我们了解一下DWZ...
在“dwz框架官网实例”中,我们可以深入学习和理解DWZ框架的核心特性及其实际应用。这个实例是在Eclipse这样的集成开发环境中经过验证的,确保了其在真实开发环境中的可行性和稳定性。 1. **框架结构** DWZ框架的...
2. **dwz_jui-master**:这个名称暗示这可能是DWZ的一个示例项目或者源码仓库,它可能包含了DWZ与jQuery UI的集成示例,展示了如何在实际应用中结合这两个库来创建功能丰富的Web界面。开发者可以通过研究这个项目的...
DWZ富客户端框架dwz-ria-1.4.6是一款专为开发高效、美观的Web应用程序而设计的后台框架。这款框架集成了多种技术,旨在简化开发过程,让开发者无需深入理解AJAX和jQuery等复杂技术,也能快速构建出与专业级应用相...
【C# DWZ 项目案例】是一个基于C#编程语言和DWZ框架的Web应用程序示例。这个项目可能是一个实际的健康网站服务测试版本,包含了轻量级的测试组件,如`HealthSite.Web.Service.TestLite`。下面我们将深入探讨C#语言、...
- application:ThinkPHP的核心应用目录,包含了模型、视图、控制器和其他相关文件。 - public:对外公开的静态资源目录,如CSS、JavaScript和图片文件,DWZ的前端资源通常放在这里。 - conf:配置文件目录,包含...
【标题】"基于DWZ富客户端框架的ssh2的项目 dwz4j"是一个整合了SSH2(Spring、Struts2、Hibernate)三大框架与DWZ富客户端框架的Web应用程序项目。DWZ富客户端框架(DWZ UI Framework)是专为开发人员提供的一种轻量...
### DWZ富客户端框架:深度解析与应用指南 #### 概述 DWZ富客户端框架,作为一款由国人自主研发的RIA(Rich Internet Application)框架,其核心构建在jQuery基础上,旨在提供一种简单实用、易于扩展且能快速进行...
在"dwz demo按列"这个项目中,我们可以理解为开发者已经创建了一个基于DWZ框架的示例应用,这个应用可能展示了如何在实际项目中按列展示数据,这对于理解和学习DWZ框架的布局和数据处理功能非常有帮助。 1. **DWZ...
DWZ(Dynamic Web Zone)框架是一款基于jQuery的前端MVC框架,主要应用于构建富互联网应用程序(RIA)。在ASP.NET环境中,DWZ框架可以与后端的.NET技术紧密结合,提供高效、便捷的网页开发解决方案。本篇文章将深入...
SSH+dwz项目中的"dwz4j"是一个基于Java的Web开发框架,主要用于构建富交互式的前端应用。SSH指的是Spring、Struts2和Hibernate这三个开源框架的组合,它们是Java Web开发中常用的技术栈。 1. **Spring**:Spring是...