`
happyqing
  • 浏览: 3198204 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ext4.2 gird 批量删除,最后一页全删了查询上一页

    博客分类:
  • Ext
阅读更多

 

//查询
function getPageList(pageIndex){
	if(typeof(pageIndex) == "undefined"){
		pageIndex = 1;
	}
	//stoOrganization.currentPage=1; //解决查询后分页栏(pagingtoolbar)显示的不是第一页的问题
	stoOrganization.pageSize = pagesize_combo.getValue();
	//stoOrganization.load({params: { start: 0, limit: pagesize_combo.getValue() }});
	stoOrganization.loadPage(pageIndex,{params: { start: (pageIndex-1)*stoOrganization.pageSize, limit: pagesize_combo.getValue()}});
}

  

//删除
function remove(){
	gridRemove(gridOrganization,stoOrganization,'id','remove.json','POST',function(response, opts, pageIndex){
		refreshNode(treOrganization, false, currentNodeId, parentNodeId);
		getPageList(pageIndex);
		gridOrganization.getSelectionModel().deselectAll();
	});
}

 

/**
 * 返回grid表格复选框选中的ids
 * @param records	选中的记录
 * @param id		id列的名字
 * @returns			1,2,3
 */
function getIds(records,id){
	var ids = [];
	for (var i = 0; i < records.length; i++) {
		ids.push(records[i].get(id));
	}
	return ids.toString();
}

 

/**
 * 删除
 * @param grid		grid对象
 * @param store		sotre对象
 * @param id		id列的名字
 * @param url		删除请求url
 * @param method	提交方式GET/POST
 */
function gridRemove(grid,store,id,url,method,callback){

	//var pageCount = grid.getDockedItems('toolbar[dock="bottom"]')[0].getPageData().pageCount;

	var isLastPage = false;	//是否是最后一页
    if(!(store.last()) || store.indexOfTotal(store.last()) == store.getTotalCount()-1){
    	isLastPage = true;
    }

	var records = grid.getSelectionModel().getSelection();
	if(records.length == 0){
		Ext.Msg.alert("提示", "请先选择数据行!");
		return;
	}
	
	var ids = getIds(records, id);
	
    Ext.Msg.confirm("警告", "确定要删除吗?", function (button) {
        if (button == "yes") {
            Ext.Ajax.request({
        	    url: url,
        	    method: method,
        	    params: {
        	        ids: ids
        	    },
        	    success: function(response, opts) {
        	        var json = Ext.decode(response.responseText);
        	        if(json.status == "success"){
        	        	//store.reload();
        	        	Ext.Msg.alert('提示', "删除成功!");
        	        	
        	        	//是最后一页,并且全删了,查询上一页的
        	        	if(isLastPage && store.getCount() == records.length){
        	        		if(store.currentPage > 1){
        	        			store.currentPage = store.currentPage - 1;
        	        		}
        	        	}
        	        	
        	        	if(typeof(callback) == 'function'){
        	        		callback(response, opts, store.currentPage);
        	        	} else {
        	        		store.reload();
        	        	}
        	        } else {
        	        	Ext.Msg.alert('提示', json.msg);
        	        }
        	        
        	    },
        	    failure: function(response, opts) {
        	    	Ext.Msg.alert('提示', '数据删除失败!'); //response.status
        	    }
            });
        }
    });
}

 

分享到:
评论

相关推荐

    ext Gird 有滚动条功能

    综上所述,Ext Grid的滚动条功能是一项重要的交互元素,通过`Ext.grid.GridView.js`中的配置和方法,我们可以对滚动条进行细致的定制,以满足各种复杂的需求。理解和掌握这些知识,对于开发高效、用户体验优秀的数据...

    ext grid 导出excel 代码实例

    在EXT Grid中,导出数据到Excel是一种常见的需求,它允许用户方便地处理和分析大量数据。EXT Grid是一个强大的JavaScript组件,提供了丰富的功能,包括数据展示、排序、筛选和编辑等。导出到Excel功能则进一步增强了...

    Ext grid合并单元格

    根据提供的文件信息,我们可以深入探讨如何在 Ext JS 中实现 Grid 的单元格合并功能。此案例主要涉及到了自定义 GridView 的 `renderHeaders` 方法来达到单元格合并的目的,并且还涉及了模板(Template)的使用、...

    EXT JSON Grid示例

    本例采用PHP,json, sqlite,来显示一个EXT3.0的Grid,需要PHP环境,可以用xampp集成包。 部署后访问http://localhost/ExtSample/employee.php

    ext超酷的grid中放图片(ext3.2.1)

    在EXT JS 3.2.1版本中,Grid组件是一个非常强大的数据展示工具,它可以用于显示大量的结构化数据,并提供丰富的交互功能。标题"ext超酷的grid中放图片(ext3.2.1)"暗示了我们将探讨如何在EXT JS的Grid组件中嵌入和...

    Ext grid中渲染进度条,超帅 源码-----下载不扣分,回帖加1分,欢迎下载,童叟无欺。

    Ext grid中渲染进度条,超帅 源码-----下载不扣分,回帖加1分,欢迎下载,童叟无欺。Ext grid中渲染进度条,超帅 源码-----下载不扣分,回帖加1分,欢迎下载,童叟无欺。Ext grid中渲染进度条,超帅 源码-----下载不扣分...

    jq-extgrid v1.2 表格插件

    extgrid 是一款jquery上的gird插件 界面风格采用了类似easyui extjs 界面风格样式 可通过css修改自己想要的样式 extgrid具有列大小 位置改变 排序 分组 分页 工具栏 扩展行 rowNumber 多选列 编辑列 行列锁 ajax...

    Ext扩展控件-----可以在代码中动态为表格增加一列或者删除一列

    在EXT JS这个强大的JavaScript框架中,开发者经常需要处理各种数据展示和操作,而表格(Grid)是其中常用的一种组件。EXT Grid控件提供了一个灵活且功能丰富的界面来展示和操作数据,而“Ext扩展控件”则进一步增强...

    Ext+MVC(combox,tree,gird,layout)

    ext + mvc combox tree grid layout

    ext5.0中将grid导出excel文件

    根据网络上已有的导出代码,替换ext2.0中的函数和属性为ext5.0版本。 无选择项默认导出全表。 未考虑grid分页的情况。 默认设置导出文件名为grid中name属性+当天年月日。 没有研究出data uri协议导出excel文件时动态...

    Ext JS权威指南

    第2章介绍了ext js 4的获取、ext js库的配置与使用、语法、本地化,以及一个经典的入门示例;第3章详细讲解了调试的工具及技巧,这是本书的重要内容,希望所有web开发者都能掌握;第4章全面介绍了ext js的基础架构;...

    表格Ext js源代码

    在本资源中,我们关注的是"表格Ext js gird源代码",这涉及到Ext JS中的Grid Panel组件,它是展示和操作数据集的主要工具。 Grid Panel是Ext JS中的核心组件之一,用于显示结构化的数据,通常以表格的形式。它支持...

    ExtGridDemo

    ExtJS 是一个强大的JavaScript库,专门用于构建富客户端的Web应用程序。它提供了丰富的用户界面组件,包括表格、面板、窗口、菜单等,使得开发者能够创建功能丰富的、交互式的Web应用。"ExtGridDemo"是一个基于ExtJS...

    GT-GIRD,一个很优秀的GIRD前台组件

    GT-GIRD是一款杰出的前端表格组件,专为构建高效、响应式的数据展示界面而设计。在Web开发领域,尤其是在处理大量数据的展示时,选择一款性能优异、功能强大的表格组件至关重要。GT-GIRD以其轻量级、快速以及免费的...

    ExtJS 4.2 Grid组件单元格合并的方法

    ExtJS 4.2 Grid组件本身并没有提供单元格合并功能,需要自己实现这个功能。 目录 1. 原理 2. 多列合并 3. 代码与在线演示 1. 原理 1.1 HTML代码分析 首先创建一个Grid组件,然后查看下的HTML源码。 1.1.1 Grid组件 ...

    ext js 2.2

    ext是一个强大的js类库,以前是基于YAHOO-UI,现在已经完全独立了, 主要包括data,widget,form,gird,dd,menu,其中最强大的应该算gird了,编程思想是基于面对对象编程(oop),扩展性相当的好.可以自己写扩展.自己定义命名...

    Extjs2.0动态加载gird的例子

    ExtJS 2.0是一款基于JavaScript的开源框架,用于构建富客户端Web应用程序。在这个例子中,我们将探讨如何在ExtJS 2.0中实现动态加载的Grid组件,这是一个非常实用的功能,尤其对于处理大量数据时,可以显著提高用户...

    Ext+struts学生管理系统

    《深入浅出》中的最后一个例子,可能是指该系统是某教程或书籍中用来演示如何将Ext与Struts整合并实际应用的一个综合实例。 【标签】所提及的"Ext+struts"组合,是现代Web应用开发中常见的一种技术栈,前端的Ext...

    Gird.zip mfc 写的GIRD 源码

    在本文中,我们将深入探讨由MFC(Microsoft Foundation Classes)编写的GIRD源码,以及在C++编程环境中如何利用这些源码实现基于对话框和Doc/View结构的应用。MFC是一个C++类库,它提供了对Windows API的封装,使得...

Global site tag (gtag.js) - Google Analytics