`
fangbubu
  • 浏览: 42810 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

Jquery flexgrid学习笔记(二)

阅读更多

之前的学习笔记(一)是直接在一个已经写死了的table中实现的,现在我们来实现动态数据的调用。

现在我们来实现一个使用ajax动态调用后台产生的数据来填充table的内容的小例子。

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<!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>flexgrid Test</title>
<link rel="stylesheet" href="../css/flexigrid/flexigrid.css"
	type="text/css"></link>
<script type="text/javascript" src="../lib/jquery/jquery.js"></script>
<script type="text/javascript" src="../flexigrid.js"></script>
<script type="text/javascript">

	$().ready(function() {
		$(".flex2").flexigrid
		(
		{
		url: 'post.jsp',
		dataType: 'json',
		colModel : [
			{display: '操作', name : 'operation', width : 60, sortable : true, align: 'center'},
			{display: '编号', name : 'id', width : 60, sortable : true, align: 'center'},
			{display: '姓名', name : 'name', width : 120, sortable : true, align: 'left'},
			{display: '密码', name : 'iso3', width : 120, sortable : true, align: 'left', hide: true},
			{display: '年龄', name : 'managename', width : 120, sortable : true, align: 'left'},
			{display: '住址', name : 'data', width : 120, sortable : true, align: 'left'}
			],

		searchitems : [
			{display: '姓名', name : 'username', isdefault: true},
			{display: '住址', name : 'address'}
			],
		sortname: "id",
		sortorder: "asc",
		usepager: true,
		title: '人员管理',
		useRp: true,
		total: 10,
		rp: 10,
		showTableToggleBtn: true,
		width: 600,
		height: 300,
		procmsg: '加载中, 请稍等 ...'
		}
		);

	});
</script>
</head>
<body>
<input id="hidden" type="hidden" name="hidden" value="null" />
<table class="flex2" ></table>
</body>
</html>

 这个是我们页面的代码

和之前的简单例子相比,区别有两个

1.我们要生成的table只需要给出一个

<table class="flex2" ></table>

 

table标签即可,table内部的结构和数据均交给js来生成

2.参数需要配置 url: 'post.jsp',

PS:这里我只是为了表现下一个例子,就没有把后台写的很完整,只是用ajax请求了一个jsp页面,在jsp页面构造了一个json结构的数据回来


 

post.jsp的内容如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<jsp:directive.page import="javabean.Student" />
<%
	System.out
			.println("--------------------post.jsp----------------------");

	System.out.println("rp==" + request.getParameter("rp"));
	System.out.println("sortorder=="
			+ request.getParameter("sortorder"));
	System.out.println("sortname==" + request.getParameter("sortname"));
	System.out.println("page==" + request.getParameter("page"));
	System.out.println("query==" + request.getParameter("query"));
	System.out.println("qtype==" + request.getParameter("qtype"));
	String rp = request.getParameter("rp"); //每页显示的数据数
	String pageString = request.getParameter("page");//获取 flexgrid传过来的页数。
	int total = 100;
	int rpint = Integer.parseInt(rp);
	int pageint = Integer.parseInt(pageString);
	//-------------------------组成返回的数据----------------------------
	List<Student> custList = new ArrayList<Student>();//定义一个list

	for (int j = rpint * (pageint - 1) + 1; j < pageint * rpint + 1; j++) {
		if (j > total)
			break;
		Student Student = new Student();
		Student.setId(j);
		Student.setAge(20 + j);
		Student.setAddress("深圳" + j);
		Student.setPassword("112233#" + j);
		Student.setUsername("张三" + j);

		custList.add(Student);
	}

	String a = "";//用来拼接数据
	int list_size = custList.size();

	if (list_size > 0) {
		for (int i = 0; i < list_size; i++) {
			Student student = custList.get(i);
			a = a
			+ "{id:'ZW',cell:['<img src=/myProject/flexigrid/accept.png >','"
			+ student.getId() + "','" + student.getUsername()
			+ "','" + student.getPassword() + "','"
			+ student.getAge() + "','" + student.getAddress()
			+ "']},";
		}
	} else {
		a = ",";
	}
	a = a.substring(0, a.length() - 1);

	out.println("{");
	out.println("page: " + pageString + ",");
	out.println("total: " + total + ",");
	out.println("rows: [");
	out.println(a);
	out.println("]}");
%>

 flexgrid在每一次点击排序,查询,翻页等动作的时候均会调用url指向的链接,进入链接方法,我们可以看到request中可以取到页面上的一些参数,默认的貌似就这6个,分别是需要排序的表格头id,排序的方式,分页大小,分页的第几页,查询的条件,查询的输入内容,根据这些参数,我们可以在后台组成各种各样的数据集,最后采用json的方式传递出去。

  页面接到传递过来的json数据,按照json中数据的顺序,顺次显示在table标签内。

  json构成的时候一些描述是固定的,譬如page,total,rows,cell等,不能写错了。

  由于json中的内容均是string格式的,我们可以直接写上string格式的html,页面解释的时候就可以输出除了文本外的一些其他格式,譬如我这个例子里面,第一列在页面上显示的就是一个img.

分享到:
评论
2 楼 zhangxpower 2011-12-29  
[b][/b]  那如果  我还想在加一列  “删除”  怎么办呢? 
1 楼 winc218 2009-11-09  
{
page: 1,
total: 1,
rows: [
{id:'0',cell:['Name','2','1','Password','Description']},
{id:'1',cell:['Name','2','1','Password','Description']},
{id:'2',cell:['Name','2','1','Password','Description']},
{id:'3',cell:['Name','2','1','Password','Description']},
{id:'4',cell:['Name','2','1','Password','Description']},
{id:'5',cell:['Name','2','1','Password','Description']}
  ]
}

请问一下我这样的格式有问题吗?
为什么我的flexigrid始终没有数据出来呢?
我用的Struts2

相关推荐

    jQuery flexgrid 学习

    《jQuery flexgrid 学习详解》 在网页开发中,数据展示往往是一个不可或缺的部分,而jQuery flexgrid就是一款强大的网格布局工具,它可以帮助开发者轻松实现复杂的数据表格展示和操作。本文将深入探讨jQuery ...

    jquery flexgrid 修改版本

    《jQuery FlexGrid 修改版详解与应用》 FlexGrid是一款基于jQuery的网格插件,它提供了丰富的数据展示和操作功能,广泛应用于数据密集型的Web应用中。然而,原生的FlexGrid存在一些限制,比如在已有数据的基础上...

    Jquery框架Flexgrid优化

    在原有数据绑定方式下做了修改,数据展示效率提高50%

    jquery表格插件flexgrid最新版及实例

    好好的flexgrid组件就这样断更,给大家留着希望能够帮助你,此外还加了些例子,希望都用其拉

    flexgrid

    FlexGrid 是一个强大的 jQuery 插件,用于在网页中创建响应式、可调整大小的数据网格。这个插件允许开发者以灵活的方式展示数据,提供多种排序、分页和过滤功能,适用于构建复杂的数据驱动的Web应用。jQuery ...

    Asp.net 调用jquery的插件flexgrid

    在本文中,我们将深入探讨如何在ASP.NET应用中调用jQuery的插件FlexGrid,并结合Access数据库进行数据操作。当然,这个过程同样适用于SQL Server数据库的集成。FlexGrid是一款功能强大的表格控件,它提供了丰富的...

    flexgrid demo

    通过查看和运行这些代码,你可以学习到如何配置和交互 FlexGrid,理解其工作原理。源码分析可以帮助你更好地掌握定制 FlexGrid 的技巧,例如添加自定义事件处理、实现复杂排序逻辑等。 5. **应用场景** - **数据...

    stuts2+ibatis+jQuery +UI + flexgrid+Json做的一个用户管理界面

    【标题】"stuts2+ibatis+jQuery +UI + flexgrid+Json做的一个用户管理界面"揭示了这个项目是基于一系列技术构建的用户管理系统。接下来,我们将详细探讨这些技术及其在用户管理中的应用。 **Struts2**:Struts2 是...

    flexgrid最新版+实例

    二、使用FlexGrid 1. **安装与引入**:首先,你需要下载FlexGrid的最新版,解压后将库文件(通常包括CSS样式文件和JavaScript文件)引入到你的HTML页面中。 2. **初始化表格**:在HTML中创建一个空的div元素作为...

    C1FlexGrid教程

    这一部分将逐步引导开发者通过实例来学习FlexGrid控件的编辑、大纲和数据分析等操作。 ### 7. 基于任务的帮助 介绍如何使用C1FlexGrid编辑器来访问特定的功能,并提供一些高级技巧,例如如何为单元格区域添加渐变...

    使用flexgrid

    flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use flexgrid use

    Flexgrid使用教程实例

    Flexgrid是一款功能强大的网格控件,常用于Windows应用程序开发,特别是在.NET Framework环境下,它提供了灵活的数据展示和...通过学习和实践,你可以根据实际需求定制出满足用户需求的界面,提高应用程序的用户体验。

    一个好用的flexgrid

    2. **多层数据支持**:除了基本的二维表格,FlexGrid还支持多层数据结构,可以呈现树状或嵌套的数据,这对于层次复杂的数据展示非常有用。 3. **数据绑定**:它可以轻松地与各种数据源绑定,如数据库、XML文件或者...

    flexgrid asp.net

    Flexgrid 是一个基于 jQuery 的数据网格控件,用于在网页中展示和操作表格数据。它在 ASP.NET 平台上被广泛使用,提供了丰富的功能,如排序、分页、过滤和编辑。在 ASP.NET 应用中,Flexgrid 可以通过 AJAX 技术与...

    flexgrid使用简单实例

    这个“flexgrid使用简单实例”是开发者学习和理解FlexGrid基本功能的一个好素材,它提供了如何在不连接数据库的情况下进行数据操作的演示。 首先,FlexGrid的核心特性是它的灵活性和可定制性。它可以展示二维表格...

    C1FlexGrid控件例子

    C1FlexGrid控件是Windows Forms应用程序中一个强大的表格控件,由ComponentOne公司开发,提供了比.NET Framework自带的...通过学习和掌握C1FlexGrid,开发者可以提升其Windows Forms应用的用户体验和功能性。

    flexgrid滚轮示例

    FlexGrid控件是Windows Forms应用程序中常用的一种网格控件,它允许开发者以表格形式展示数据,并提供了丰富的功能和自定义选项。"flexgrid滚轮示例"是指在使用FlexGrid时,通过鼠标滚轮实现网格内容的滚动效果。在...

    FlexGrid自定义列标题

    FlexGrid控件是Windows Forms和WPF开发中常用的一个组件,尤其在数据展示和编辑方面具有广泛的应用。它以其灵活性和强大的功能而受到开发者青睐。本文将深入探讨如何在FlexGrid中实现自定义列标题,以提升用户界面的...

    Flexgrid用法

    通过JavaScript或jQuery可以实现Div的显示和隐藏效果。 5. **实现步骤** - **初始化Flexgrid**: 设置表格的基本配置,如列定义、行数等。 - **绑定数据源**: 链接Flexgrid到数据源,可能是一个JSON数组或来自...

Global site tag (gtag.js) - Google Analytics