ExtJs删除数据代码如下:
// 删除
delete_users : function() {
var selectedRows = this.getSelectionModel().getSelections();// 返回值为
// Record 数组
if ((!selectedRows) || (selectedRows.length <= 0)) {
Ext.MessageBox.alert('提示', '请选择要删除的数据...');
return;
}
// 将选中行数据依次加入数组,以备作为参数传送
var recToDelete = [];
for (var i = 0; i < selectedRows.length; i++) {
// debugger;
// 1为系统管理员,不能删除
id_v = selectedRows[i].get('id');
// alert(id_v);
if (id_v != 1)
recToDelete.push(selectedRows[i].data);
}
Ext.MessageBox.confirm('系统提示', '删除数据不可恢复!<br />您确定要删除所选数据吗?', function(
btn) {
if (btn == 'yes') {
this.body.mask('正在删除数据...', 'x-mask-loading');
Ext.Ajax.request({
scope : this,
url : 'app/servant/delete_user.do',
params : {
recToDelete : Ext.encode(recToDelete)
// 将选中行的数据编码为JSON形式
},
success : function(response, options) {
if (response.responseText != '') {
var rst = Ext.util.JSON
.decode(response.responseText);
if ((rst) && (rst.success)) {
for (var i = 0; i < selectedRows.length; i++) {
// 1为系统管理员,不能删除
id_v = selectedRows[i].get('id');
if (id_v != 1)
this.store
.remove(selectedRows[i]);
}
this.body.unmask();
} else {
this.body.unmask();
Ext.Msg.alert('系统提示', "删除失败!请稍候重试...")
}
}
},
failure : function(response, options) {
this.body.unmask();
Ext.Msg.alert('系统提示', "删除失败!请稍候重试...")
}
});
}
}, this);
},
发现用了一个Ext.MessageBox.confirm()...
导致删除代码过长,格式化后的代码缩进看着也不太舒服,所以就改进为如下形式:
// 删除数据
DeleteData : function() {
records = this.getSelectionModel().getSelections();
if (records.length < 1) {
Ext.MessageBox.alert("提示", "请先选择要删除的行!");
return;
}
Ext.MessageBox.confirm('提示', '删除数据不可恢复!<br />您确定要删除所选数据吗?',
this.do_delete, this);
},
do_delete : function(btn) {
//debugger;
if (btn == 'yes') {
records = this.getSelectionModel().getSelections();
var strSplit = "";
var ids_v = "";
for (var i = 0; i < records.length; i++) {
strSplit = (ids_v.toString() == "") ? "" : ",";
ids_v += (strSplit + records[i].get('id'));
}
Ext.Ajax.request({
scope : this, // 限制范围到grid,this指向grid
url : path_prefix + 'delete_data',
params : {
ids : ids_v
},
method : 'GET',
success : function(response, option) {
var rsp = Ext.decode(response.responseText)
if ((rsp) && (rsp.success)) {
for (var i = 0; i < records.length; i++) {
this.store.remove(records[i]);
}
}
},
failure : function() {
Ext.MessageBox.alert('消息', '删除数据失败!');
}
});
}
}
分享到:
相关推荐
在ExtJs中删除数据行,通常涉及以下几个步骤: 1. **获取要删除的记录**:你可以通过用户界面的交互(如点击删除按钮)获取到要删除的记录。例如,如果你有一个Grid面板,可以使用`grid.getSelectionModel()....
这里我们关注的是如何在SSH框架下,结合ExtJS 4.0版本的Grid组件实现数据的删除操作。 首先,让我们理解SSH框架。Spring提供了依赖注入和事务管理,Struts处理MVC(模型-视图-控制器)架构,而Hibernate则作为ORM...
6. 删除数据: 使用`store.remove(record)`可以删除Store中的某个记录,然后调用`store.sync()`进行同步。在这个主题的示例文件`FinishDelete`中,可能包含了如何完成删除操作的代码。 7. 数据加载与同步: Store...
在Extjs中,数据通常是通过Store对象进行管理的。在初始化Store时,我们创建了一个HttpProxy实例,指定URL为`index.php`,这是与PHP服务器端进行交互的接口。然后,定义了JSONReader来解析返回的数据,设置了数据的...
实现treegrid组件的(CRUD)读取、新增、修改、删除 //设置grid单元格处于编辑状态 selcell:function(arow,acol){ this.editingPlugin.startEditByPosition({row:arow,column:acol}); }, selcell2:function(node,...
创建一个Servlet来响应ExtJS的Ajax请求,获取、添加、更新或删除数据。 ```java @WebServlet("/DataServlet") public class DataServlet extends HttpServlet { protected void doGet(HttpServletRequest request,...
在EXTJS中,树形组件(Tree)是一种常见的数据展示形式,它能够以层级结构显示数据,广泛应用于目录浏览、组织架构展示等场景。EXTJS3.0是EXTJS的一个版本,虽然相对较旧,但仍然具有强大的功能和丰富的特性。 在...
在数据交互设计中,我们将探讨如何使用ExtJS来有效地与服务器进行数据交换,包括加载、保存、更新和删除数据。 描述中提到的链接指向了一篇在iteye博客上的文章,虽然具体内容没有提供,但我们可以根据常见的ExtJS...
总的来说,这个示例将帮助我们理解如何使用ExtJS的Store、Model、Proxy和Controller等组件与后台服务器进行有效的数据交互,从而实现数据的加载、添加、编辑和删除等操作。通过学习这个示例,开发者可以掌握如何构建...
本文将详细介绍如何在ExtJS中实现grid多行数据的全部删除功能。 #### 一、理解ExtJS中的Grid组件 在开始之前,我们需要先了解ExtJS中的Grid组件。Grid是ExtJS中最常用的组件之一,用于展示和编辑表格形式的数据。...
在前后台数据交互中,ExtJs 起着至关重要的作用,它可以与服务器端进行异步通信,实现数据的获取、更新、删除等操作。本文将详细介绍如何使用ExtJs 进行前后台数据交互,并修复可能出现的问题。 首先,理解ExtJs的...
在“Extjs和后台数据库交互的程序,增删改查”项目中,我们将探讨如何利用ExtJS与后台数据库进行数据的添加、删除、修改和查询操作。 1. **ExtJS的数据模型(Model)** 在ExtJS中,数据模型定义了对象的结构,包括...
- **数据操作**:包括添加新记录、更新现有记录和删除记录等常见操作。 - **数据绑定**:Store 与 UI 组件之间的数据绑定机制。 #### 七、ExtJS 4.0 的事件机制——Event - **事件类型**:ExtJS 提供了大量的内置...
在实际业务场景中,经常需要支持用户对表格中的多行数据进行选择,并执行批量操作,如删除、编辑等。因此,掌握如何在ExtJs Grid中实现多选功能以及如何获取已选中的所有值是非常重要的。 #### 二、实现多选功能 在...
在本文中,我们将深入探讨如何使用ExtJs框架实现图片的批量显示、上传和删除功能。ExtJs是一款强大的JavaScript库,专用于构建富客户端应用程序,它提供了丰富的组件和强大的数据管理能力,非常适合处理图像操作。 ...
“删除”操作则根据EXTJS4传来的ID删除对应记录;“修改”是更新已存在的记录;“查询”通常通过发送过滤条件,获取数据库中的特定数据。 为了使EXTJS4和STRUTS2能够通信,需要配置STRUTS2的JSON插件,使得ACTION...
在"ExtJS增删改查"这个主题中,我们将深入探讨如何利用ExtJS进行CRUD(创建Create、读取Read、更新Update和删除Delete)操作,这是任何数据库驱动的应用程序中的基本功能。 首先,创建(Create)操作通常涉及创建新...
ExtJS 4 是一款强大的JavaScript库,用于构建富客户端应用程序,尤其在创建数据驱动的用户界面方面表现出色。TabPanel是ExtJS中的一个重要组件,它允许用户在一个窗口中组织多个视图,每个视图对应一个选项卡。在这...
ExtJS 提供了Store组件,可以绑定到各种数据源,如JSON、XML或Array。数据可以通过Ajax请求加载,也可以手动填充。 2. **列配置**:GridPanel的列可以通过配置项定义,包括列名、宽度、对齐方式、排序和过滤等。...
1. **ExtJs Grid组件**:ExtJs 的Grid组件是一个高度可定制的数据视图,能够显示大量的数据并提供分页、排序、过滤、编辑等功能。它通常与Store组件一起使用,Store负责管理数据源,而Grid则负责显示和操作这些数据...