- 浏览: 321672 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
zhangliguoaccp:
对于女人不要太看重吧,喜欢你的自然留下,你若盛开,蝴蝶自来!
遇见她 -
yiqi1943:
springtest支持的spring版本最低是多少啊
Spring Test -
WITLP:
爱,我只知道你一部分的事情,没想到你从华智出来这么坎坷
2009 为什么待到毕业时? -
WITLP:
哈哈,原来你就是传说中的欧阳平?
ANT 简单使用 -
bo_hai:
谢谢。总结的很好。
工具 PL/SQL 快捷键
YUI Library: 一切关于yui的资料都可以获取
http://developer.yahoo.com/yui/
上个效果图:
两步走:
1 数据的获取(jquery form动态提交或者jquery ajax异步请求,内容和记录分两次请求):
2 数据的显示:(yahooui datatable)
1 数据的获取(jquery form动态提交或者jquery ajax异步请求):
YAHOOUI提供datasource可以异步去查询数据和数据的总记录数(一次查完),由于
URL填写成action的时候跳转不了,可能自己还没有弄清楚,有谁知道请告诉我,
谢谢了.数据获取采用jquery的form动态提交或者js变量作为URL参数进行请求都可以,
但是后者会有中文乱码问题,并且当参数过长的时候URL会变得很长.曾经把参数以
json格式传递过去,只需一个变量,后台直接将json格式参数转换成JavaBean
关于json与java之间的相互转换请看这里,以后补上
现在补上了,2010-2-10,点击连接就可以看了js变量作为URL参数乱码 内容数据和分页导航的数据是分两次请求去取的,所以查询条件和page,perPageResults都必须同步的传递过去,否则内容和记录数就不一致
js变量作为URL参数进行传递
jquery form的动态提交把page也必须包含进去
后台处理
千万不要复制粘贴,我只是说思路而已
2 数据的显示:(yahooui datatable)
此处是第一步执行完后的回调函数,这样页面div上就可以显示数据了
这只是最最基本的一点
例子:
Spring2.5+ibatis+Struts1 oracle 9.0
导入即可运行
需求变更
1--列宽要随便改导入:
在列定义中加属性:
2--列字段的值是0的要求在页面上显示的时候是 空白
在列定义中定义[/size]
3--在DataTable中下拉列表动态显示
分两步走
a : 初始化信息放在ServletContext中
主要说下类:
初始化信息放在list中,(属性 -- > 指向list)
list<SelectDTO>
SelectDTO中有属性String value,String text
为什么放在list中,而不是放在map中?(页面上c标签可以循环装DTO的list)
b: 把信息转化成js的Array,在YUI列定义中进行设置
1--ServletContext中的list信息转化成Array
2--yui中进行设置这个下拉信息Array(在列定义中进行设置)
附上例子:
Spring2.5+ibatis+Struts1 oracle 9.0
导入即可运行(only a table and a procedure)
http://developer.yahoo.com/yui/
上个效果图:
两步走:
1 数据的获取(jquery form动态提交或者jquery ajax异步请求,内容和记录分两次请求):
2 数据的显示:(yahooui datatable)
1 数据的获取(jquery form动态提交或者jquery ajax异步请求):
YAHOOUI提供datasource可以异步去查询数据和数据的总记录数(一次查完),由于
//数据源 this.myDataSource = new YAHOO.util.DataSource(URL);
URL填写成action的时候跳转不了,可能自己还没有弄清楚,有谁知道请告诉我,
谢谢了.数据获取采用jquery的form动态提交或者js变量作为URL参数进行请求都可以,
但是后者会有中文乱码问题,并且当参数过长的时候URL会变得很长.曾经把参数以
json格式传递过去,只需一个变量,后台直接将json格式参数转换成JavaBean
关于json与java之间的相互转换请看这里,以后补上
现在补上了,2010-2-10,点击连接就可以看了js变量作为URL参数乱码 内容数据和分页导航的数据是分两次请求去取的,所以查询条件和page,perPageResults都必须同步的传递过去,否则内容和记录数就不一致
js变量作为URL参数进行传递
//得到分页内容url function getQueryUrl(page) { var account = document.getElementById("uuser").value; var name = document.getElementById("uname").value; var perPageResults = document.getElementById("perPageResults").value; var backEndUrl = contextPath+"/yuidemo/userManager.do?method=queryByYahoo_1&count=1&account="+account+"&name="+name+"&perPageResults="+perPageResults; if (typeof page != 'undefined'){ backEndUrl +="&page="+page; } return backEndUrl; } //内容显示 jquery ajax异步请求 function content(pageUrl){ $.ajax( { type : "POST", url : pageUrl, cache : false, dataType: "json", success : showContent }); }
jquery form的动态提交把page也必须包含进去
// 内容显示 function content(){ var options = { dataType: 'json', url: contextPath+"/yuidemo/userManager.do?method=queryByYahoo_2&count=1", success: showContent }; $('#myForm').ajaxForm(options); $('#myForm').submit(); }
后台处理
List<UserDTO> list = new ArrayList<UserDTO>(); int page = 1; if (user.getPage() != null && !"".equals(user.getPage())) { page = Integer.parseInt(user.getPage()); } int perPageResults = 10; if (user.getPerPageResults() != null && !"".equals(user.getPerPageResults())) { perPageResults = Integer.parseInt(user.getPerPageResults()); } // ROWNUM rowIndex 从1开始不是从0开始 user.setStartRowNum((long) (page - 1) * perPageResults + 1); user.setEndRowNum((long) page * perPageResults); list = this.userDao.query(user); JSONArray json = new JSONArray(); json.clear(); json = JSONArray.fromObject(list); response.setHeader("X-JSON", json.toString()); response.setCharacterEncoding("UTF-8"); response.setHeader("Cache-Control", "no-cache,must-revalidate");// 清楚缓存 response.setHeader("Pragma", "no-cache"); // HTTP 1.0 response.setDateHeader("Expires", 0); // prevents caching at the // json.put("data", 1); response.getWriter().print(json.toString()); return null;
千万不要复制粘贴,我只是说思路而已
2 数据的显示:(yahooui datatable)
此处是第一步执行完后的回调函数,这样页面div上就可以显示数据了
这只是最最基本的一点
function showContent(data){ alert(data); YAHOO.widget.DataTable.formatCheckBox = function(elLiner, oRecord,oColumn, oData) { var value = oRecord.getData("uuid"); elLiner.innerHTML = "<input type='checkbox'value='"+value+"'>"; }; //表头定义 var myColumnDefs = [ { key : "<input id='www' name='w' value='www' type='checkbox' onclick=\"selectall()\" >全选", formatter:YAHOO.widget.DataTable.formatCheckBox }, { key : "uuid", label:"用户ID", sortable : true, formatter:YAHOO.widget.DataTable.formatNumber }, { key : "uuser", label:"帐号", sortable : true }, { key : "uname", label:"姓名", sortable : true }, { key : "upassword", label:"密码", sortable : true }, { key : "urole", label:"角色", sortable : true },{ key : "原因", formatter : "dropdown", dropdownOptions : [ "选择", "无此人", "停机", "忙" ], sortable : false } ]; //数据源 this.myDataSource = new YAHOO.util.DataSource(data); //this.myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON; this.myDataSource.responseType = YAHOO.util.DataSource.TYPE_JSARRAY; this.myDataSource.responseSchema = { //resultsList : "userList", // Use the parse methods to populate the RecordSet with the right data types fields : [ { key : "uuid",parser:"number" }, // this is already string data so no parser needed { key : "uuser" }, { key : "uname" }, { key : "upassword" }, { key : "urole" } ] }; //数据源与页面div绑定 this.myDataTable = new YAHOO.widget.DataTable("formatting", myColumnDefs, this.myDataSource); }
例子:
Spring2.5+ibatis+Struts1 oracle 9.0
导入即可运行
需求变更
1--列宽要随便改导入:
<script type="text/javascript" src="../js/dragdrop-min.js"></script>
在列定义中加属性:
resizeable:true,
2--列字段的值是0的要求在页面上显示的时候是 空白
在列定义中定义[/size]
//投诉及建议 var renComplainsFormatte = function (el, oRecord, oColumn, oData) { var renComplains =oRecord.getData('renComplains'); if (renComplains == '0') { el.innerHTML=''; } }; //在列定义再加上: formatter:renComplainsFormatte
3--在DataTable中下拉列表动态显示
分两步走
a : 初始化信息放在ServletContext中
主要说下类:
初始化信息放在list中,(属性 -- > 指向list)
list<SelectDTO>
SelectDTO中有属性String value,String text
为什么放在list中,而不是放在map中?(页面上c标签可以循环装DTO的list)
b: 把信息转化成js的Array,在YUI列定义中进行设置
1--ServletContext中的list信息转化成Array
<script type="text/javascript"> var dropdata = new Array(); //var dropdata = [{'text':'请选择','value':'-1'}]; var first = {'label':'请选择','value':'-1'}; dropdata.push(first); //dropdata.push(aa); <c:forEach items="${oyp}" var="item"> var object = new Object(); object.label = "${item.text}"; object.value = "${item.value}"; //dropdata.push({'text':'${item.text}','value':'${item.value}'}); dropdata.push(object); </c:forEach> </script>
2--yui中进行设置这个下拉信息Array(在列定义中进行设置)
{ key : "uname", sortable : false, editor: new YAHOO.widget.DropdownCellEditor({dropdownOptions:eval(dropdata), disableBtns:true}), formatter: function(el, oRecord, oColumn, oData) { var combo = dropdata; for (var i = 0;i<combo.length;i++) { if (oData == combo[i].value) { el.innerHTML = combo[i].label; return; } el.innerHTML = oData; } } },
附上例子:
Spring2.5+ibatis+Struts1 oracle 9.0
导入即可运行(only a table and a procedure)
- localhostSSIWLdemo.rar (7 MB)
- 下载次数: 275
发表评论
-
可输入的下拉框,兼容IE6,7,8,9
2013-06-21 14:26 1308有时候因为包含了这一部分导致下拉框不可使用: <! ... -
JS Web前段性能问题
2011-03-29 18:00 839Web前段性能问题 -
JS body.clientWidth,documentElement.clientWidth,clientX
2011-03-29 16:50 1736event的x,clientX,offsetX ... -
自写 js validation 验证框架
2011-02-15 16:32 1657一、背景: 一个 ... -
JS jquery ajax post html
2010-06-30 15:14 1642$(document).ready(function(){ ... -
JS jquery自动补全
2010-06-30 14:18 2591思路: 1 输入字符串,keyup事件,通过输入的字符串去 ... -
JS jquery常用语法
2010-06-30 14:05 906$("#id").val(); $( ... -
JS 过滤特殊字符
2010-06-29 15:44 3105<input type = "text&quo ... -
JS 注册监听
2010-06-22 15:45 1286<div id ="testdiv" ... -
JS Jquery 锁屏
2010-06-22 13:26 2472http://jquery.malsup.com/block/ ... -
JS 判断是否IE浏览器
2010-06-12 12:33 1400var ie = 0/*@cc_on+1@*/ ; 利用IE ... -
JS event获取触发事件的对象
2010-04-21 09:11 1280更多信息查询API <script> <s ... -
JS js控制鼠标左右键和复制粘贴事件
2010-04-12 20:27 3527JS js控制鼠标左右键和 ... -
JS js控制select多选
2010-04-07 10:46 1854<script> function move ... -
JS 转换函数和属性定义范围
2010-04-07 09:54 938<script> //转换函数 eval() ... -
JS 加码解码
2010-04-07 09:52 1507<script> //javascript加码解 ... -
JS 定时任务setTimeout与setInterval
2010-04-07 09:49 2021~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ... -
JS 框架跳转
2010-04-06 13:06 1364<script language="javas ... -
JS prototype例子原型与继承
2010-03-29 16:15 1728prototype 属性 返回对象类型原型的引用。 ... -
JS 获得当前实时日期和时分秒星期 日期比较 当前日期格式化
2010-03-26 13:36 3041这些查API文档,一目了然,这是一个js获得当前实时日期和时分 ...
相关推荐
在本教程中,我们将深入探讨如何使用Yahoo User Interface (YUI) 2.8 版本来实现一个从服务器端动态获取数据并具备分页功能的DataTable。YUI 是一个强大的JavaScript库,提供了丰富的组件和工具,用于创建交互式和...
使用YUI2.8 仿照JQuery UI 的select插件写的一个函数 详情见我的博客http://hi.baidu.com/hjzheng
jQuery对JSON数据提供了良好的支持,允许开发者在"$.ajax"函数中指定数据类型为"json",并能够自动将接收到的JSON格式字符串解析成JavaScript对象,或者将JavaScript对象序列化为JSON字符串发送到服务器。...
7. **AJAX**:YUI的AJAX组件支持异步数据交换,使得网页可以在不刷新的情况下更新内容。 8. **动画效果**:YUI的Anim模块可以创建复杂的动画效果,增强了用户体验。 **YUI的示例** 压缩包中的示例文件展示了如何...
适合图灵程序设计丛书web开发系列-javascript基础教程的学习使用
这是对YUI拖拽例子的改编,大家可以去访问的博客 http://hi.baidu.com/hjzheng
2. **Ajax**:IO模块用于实现异步数据请求,支持JSONP、XHR等通信方式。 3. **表格与表单**:DataTable和Form模块提供表格和表单的高级处理,包括排序、过滤、验证等功能。 4. **布局与容器**:Panel、Overlay、...
5. **Ajax通信**:YUI的Connection Manager模块简化了与服务器的异步通信,支持GET、POST等多种HTTP请求方法,可以处理XML、JSON、文本等各种数据格式。 6. **数据管理**:YUI Data模块提供了数据存储和操作的功能...
6. **DataSource(数据源)**:处理异步数据请求,支持XML、JSON等多种数据格式。 7. **IO(网络通信)**:处理HTTP请求,实现AJAX功能。 8. **Calendar(日历)**:创建交互式日历组件。 9. **DataTable(表格)...
5. **connection**:AJAX连接模块,是实现异步数据交换的核心部分,允许在后台与服务器通信而无需刷新页面。 6. **calendar**:日历组件,为Web应用提供日期选择功能。 7. **dragdrop**:拖放模块,让用户能够通过...
DWR通过提供异步通信的能力,使得前端可以动态地请求服务器端的数据,而YUI则提供了丰富的UI组件和样式,帮助我们创建美观的用户界面,包括分页控件。 下面我们将详细探讨如何结合DWR和YUI实现分页: 1. **DWR配置...
Ajax模块简化了异步数据请求,支持XMLHttpRequest及JSONP;Animation模块则让开发者能够创建复杂的动画效果。 2. **UI组件**:YUI 2.9包含了一系列的UI组件,如Container(容器)、Form(表单)、Button(按钮)、...
本教程将深入探讨Jquery、YUI和ExtJs这三大JavaScript框架在表单验证和提示功能方面的应用。 **jQuery** jQuery是一款轻量级、高性能的JavaScript库,以其简洁的API和跨浏览器兼容性闻名。在表单验证方面,jQuery...
《Professional JavaScript Frameworks: Prototype,YUI, ExtJS, Dojo and MooTools》是关于JavaScript框架的高级编程资源,包含了各种知名框架的源代码,这些框架包括Prototype、YUI(Yahoo! User Interface Library...
在给定的标题"JavaScript libraries--->jQuery, Prototype, Mootools, YUI, Extjs, Dojo"中,提到了五种著名的JavaScript库:jQuery、Prototype、Mootools、YUI和ExtJS。这些库都有各自的特性和优势,下面将详细介绍...
5. **Ajax交互**:深入理解jQuery的`.ajax()`, `.get()`, `.post()`等函数,以及如何处理异步请求的数据和错误。 6. **插件开发**:介绍如何编写和使用jQuery插件,扩展jQuery的功能,提高代码复用性。 7. **...
5. **DataSource(数据源)**:用于处理异步数据请求,支持Ajax、JSONP等数据获取方式。 6. **IO(输入/输出)**:提供Ajax接口,处理与服务器的通信。 7. **Selector(选择器)**:类似jQuery的选择器,可以快速...