`
chinrui
  • 浏览: 97626 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

PagingToolbar带参数的分页

 
阅读更多

PagingToolbar带参数的分页

一般在分页的时候,会指定两个参数,Start与Limit一个是第几条记录开始,一个是一个页面最多几条记录,一般来说这两个条件已经够了,但是如果你要进行有多余条件查询的时候,就要传递额外的参数过去 了。

/**
 * ********************************************************************************************
 * UserQueryFn.js
 */
function userQueryFn(tabPanel) {
	
	// 创建记录模型
	var user = new Ext.data.Record.create([
		{name:"id",mapping:"id"},
		{name:"name",mapping:"name"},
		{name:"password",mapping:"password"}
	]);
	
	// 创建数据存储器
	var store = new Ext.data.Store({
		url:"User_queryOnCondition.action",
		reader:new Ext.data.JsonReader({
			id:"id",
			root:"users",
			totalProperty:"recordSize"
		},user)
	});
	
	// 查询条件区域
	var queryPanel = new Ext.form.FormPanel({
		baseCls: 'x-plain',
		layout:"column",
		items:[
			new Ext.form.Label({
				text:"查询条件"
			}),
			new Ext.form.ComboBox({
				triggerAction :"all",
				selectOnFocus:true,
				editable:false,
				store:new Ext.data.SimpleStore({
					fields:["queryL","queryV"],
					data:[
						["id","id"],
						["用户名","name"],
						["密码","password"]
					]
				}),
				typeAhead:true,
				displayField:"queryL",
				hiddenName:"queryCondition",
				valueField:"queryV",
				mode:"local",
				readOnly:true
			}),
			new Ext.form.Label({text:"查询值"}),
			new Ext.form.TextField({
				id:"queryValue",
				name:"queryValue"
			})
		]
	});
	
	// 创建列模型
	var colModel = new Ext.grid.ColumnModel([
		{header:"用户ID",dataIndex:"id",sortable:true},
		{header:"用户名",dataIndex:"name",sortable:true,	width:300},
		{header:"密码",dataIndex:"password",sortable:true}
	]);
	
	// 主显示区
	var userQueryPanel = new Ext.grid.EditorGridPanel({
		width:800,
		height:370,
		frame:true,
		store:store,
		cm:colModel,
		autoExpandColumn:3,
		bbar:new Ext.PagingToolbar({
			pageSize : 10,
			displayInfo:true,
			store:store,
		    displayMsg : '此页显示记录第{0}条到第{1}条,共{2}条',
		    emptyMsg : '没有任何用户记录',
		    firstText : '首页',
		    prevText : '上一页',
		    nextText : '下一页',
		    lastText : '尾页',
		    refreshText : '刷新'
		})
	});
	
	var tabPage = tabPanel.add({
		title:"用户查询",
		closable:true,
		tbar:[
			queryPanel,
			{text:"搜索",handler:function() {
				store.load({
					params:{
						"start":0,
						"limit":10,
						"queryCondition":Ext.get("queryCondition").dom.value,
						"queryValue":Ext.get("queryValue").dom.value
					}
				});
			}}
		],
		items:userQueryPanel
	});
	// 额外参数传递
	store.on('beforeload', function() {
	       this.baseParams = {"queryCondition":Ext.get("queryCondition").dom.value,"queryValue":Ext.get("queryValue").dom.value};
	}); 
	
	tabPanel.setActiveTab(tabPage);
}

 

分享到:
评论

相关推荐

    Extjs TreeStore+pagingToolbar 分页

    在这个主题中,我们将深入探讨如何结合TreeStore和pagingToolbar实现分页功能。 在传统的表格数据展示中,分页是一种常见的优化策略,它允许用户逐页查看大量数据,而不是一次性加载所有内容。在树形数据中,由于...

    extjs使用pagingtoolbar时,点击下一页,出现查询结果和查询条件不的解决办法

    这个问题通常出现在服务器端分页的场景,因为PagingToolbar默认传递的参数只有`start`和`limit`,这两个参数用于指定数据集的起始位置和每页显示的数量。 当我们的查询条件涉及多个字段,如`name`、`isUse`和`cpcod...

    extjs 分页

    1. 配置Store:首先,我们需要在Store中配置分页参数,如设置每页记录数`pageSize`,开启分页`paging`,并指定分页模型`pagingModel`为`client`(客户端分页)或`server`(服务器端分页)。 2. Grid与Store绑定:将...

    extjs 分页是碰到的问题,点击下一页事,查询条件无法传递

    在Extjs中使用`pagingtoolbar`组件进行分页操作时,通常情况下,当我们点击“下一页”,`store`会自动加载数据。但是,默认情况下`store`只传递了`start`和`limit`两个参数,这意味着如果之前进行了某种查询(例如...

    EXT2.0分页

    在分页场景下,Store需要配置分页参数,如每页记录数(pageSize)和当前页数(currentPage)。 EXT2.0分页的实现通常涉及以下几个步骤: 1. 创建一个Store,并设置分页属性,例如: ```javascript var store = ...

    Ext JS PagingToolbar 组件

    3. 编写必要的事件监听器,以便在用户更改每页记录数时更新Store的分页参数。 4. 更新GridPanel,使其根据新的每页记录数重新加载数据。 在提供的文件列表中,我们看到有`.aspx`和`.cs`文件,这表明这是一个基于ASP...

    Jquery页面分页

    EXT是一个强大的JavaScript组件库,它提供了完善的分页组件EXT.data.PagingToolbar。在EXT应用中,只需配置数据源和分页参数,即可轻松实现分页功能。EXT的分页不仅包含UI展示,还包含了数据加载、状态管理等完整...

    Ext 分页核心代码

    如果需要更复杂的分页逻辑,如分组分页、自定义查询参数等,可以通过监听`beforeload`事件并在事件处理器中修改请求参数来实现。 7. **优化分页性能** 为了提高性能,避免一次性加载所有数据,可以采用分页策略。...

    简单的小例子Ext+servlet 分页

    - Ext JS Grid允许开发者设置分页栏,通过`pagingToolbar`配置项,可以轻松添加分页工具栏到Grid底部。 - 分页栏通常包含“第一”、“上一页”、“下一页”、“最后”按钮以及页码选择器,用户可以通过这些元素来...

    Extjs之--带分页的lovcombo控件

    同时,需要引入Ext.PagingToolbar组件,它会自动与store关联,显示分页按钮和信息。 3. 加载和查询逻辑:当用户输入关键词或切换分页时,LOV Combo需要向服务器发送请求获取对应的数据。这可以通过监听store的load...

    Ext表格获取后台数据

    因此,ExtJS提供了一个分页工具条,称为Ext.PagingToolbar,它可以帮助开发者快速实现分页功能。 在本例中,我们使用ExtJS 4.2创建了一个简单的表格控件,并使用Ext.PagingToolbar实现了分页功能。首先,我们创建了...

    EXT.NET1.0带自定义页大小的分页

    在这个“EXT.NET1.0带自定义页大小的分页”示例中,我们将深入探讨EXT.NET如何实现自定义分页功能,并通过Pagination.aspx、Pagination.aspx.cs和存储过程.sql这三份文件来理解整个实现过程。 在Web开发中,分页是...

    Extjs grid分页1

    4. **自定义分页**:如果需要更复杂的分页逻辑,例如服务器端分页,可以自定义`proxy`的`load`方法,将`start`和`limit`参数(分别表示起始位置和每页记录数)传递给服务器,服务器返回对应页的数据。 5. **事件...

    extjs 简单分页例子

    分页请求通常是GET请求,EXTJS会自动添加额外参数到URL中。服务器端解析这些参数,进行数据查询,然后返回包含当前页数据的JSON对象。JSON对象通常包括一个"data"字段,里面是当前页的数据数组,以及可选的"total...

    Ext实现分页查询,前台

    分页工具栏通过`PagingToolbar`创建,设置了每页显示的条数(pageSize),并关联了数据存储(store),以便根据用户操作更新分页状态。 `displayInfo`属性确保显示当前页信息,`beforePageText`和`afterPageText`...

    Ext-实现带查询以及分页的列表

    在EXTJS框架中,实现一个带...3. 添加分页工具栏(PagingToolbar),与Store关联并设置分页参数。 通过这种方式,我们可以构建一个功能完备的列表,不仅能够展示数据,还支持用户进行查询和分页操作,提高用户体验。

    EXT树表分页(SERVLET)

    2. **EXT Store配置**:分页功能在EXT的Store中实现,需要设置分页参数,如每页记录数(pageSize)、自动加载(autoLoad)和分页控件(pagingToolbar)。此外,Store还需要连接到后台服务器以获取数据。 3. **...

    extjs前台分页插件PagingStore!

    3. **分页栏(Paging Toolbar)**:PagingStore通常与PagingToolbar组件一起使用,PagingToolbar提供了导航按钮(如“上一页”、“下一页”)和页码显示,用户可以通过交互来切换页面。 4. **数据加载和更新**:当...

    extjs 学习笔记 四 带分页的grid

    在extjs中,类Ext.PagingToolbar封装了关于分页的操作,该类从Toolbar继承而来,单从名字上看,我们也猜得出这是一个能够处理分页的工具栏。好吧,那我们就来看看如何构造这样一个工具栏吧。PagingToolbar类的构造...

    使用extremecomponent组件实现分页、导出xls

    Extremecomponents提供了分页组件,如PagingToolbar,它可以方便地与GridPanel结合使用,实现数据的分页展示。配置分页组件主要涉及设置每页显示的数据量(pageSize)以及连接后台服务获取数据的URL(url)。 接着...

Global site tag (gtag.js) - Google Analytics