/*请选择行*/
function pleaseclickRow(grid){
var selectedRows = grid.getSelectionModel().getSelections();
if(selectedRows.length==0){
Ext.Msg.alert("系统提示","请选择行!");
return false;
}
}
/*只能选择一行*/
function pleaseclickOneRow(grid){
var selectedRows = grid.getSelectionModel().getSelections();
if(selectedRows.length>1){
Ext.Msg.alert("系统提示","只能选择一行!");
return false;
}
}
/*获得选中的值 -- 删除、修改*/
function clickRowsDelete(grid,op){
var selectedRows = grid.getSelectionModel().getSelections();
var str = "";
for(var i =0 ;i<selectedRows.length;i++){
var record = selectedRows[i];
str+=record.get(op)+",";
}
str = str.substr(0,str.length-1);
return str;
}
/*Ajax返回请求信息 成功、失败*/
function dosuccessfailure(response){
Ext.Msg.alert('系统提示',response.responseText);
}
/**
* 刷新整个视图
*/
function refreshGridRows(grid,store){
var selectedRows = grid.getSelectionModel().getSelections();
for(var j=0;j<selectedRows.length;j++){
store.remove(selectedRows[j]);//删除行
}
grid.getView().refresh();//刷新整个grid视图,重新排序
}
/*添加区域*/
function divclick_addZone(){
Ext.get('rightCenter').getUpdater().update({
url:'view/toleftaddzone.jsp',
scripts:true //执行url中的js代码,则需要添加该参数
});
}
/*查询区域*/
function divclick_searchZone(){
Ext.get('rightCenter').getUpdater().update({
url:'view/toshowzone.jsp',
scripts:true //执行url中的js代码,则需要添加该参数
});
}
/*修改区域*/
function divclick_updateZone(){
var st = pleaseclickRow(zonegrid);
if(st!=false){
var state = pleaseclickOneRow(zonegrid);
if(state!=false){
var s = clickRowsDelete(zonegrid,"zoneID");
Ext.get('rightCenter').getUpdater().update({
url:'zone.do?op=toupdateZoneMerchantStoreStation&type=zone&s='+s,
scripts:true //执行url中的js代码,则需要添加该参数
});
}
}
}
/*删除区域*/
function divclick_deleteZone(){
var state = pleaseclickRow(zonegrid);
if(state!=false){
var s = clickRowsDelete(zonegrid,"zoneID");
Ext.Msg.confirm('系统提示','确定要删除吗?',function(btn){
if(btn=='yes'){
Ext.Ajax.request({
url:'zone.do?op=deleteZoneMerchantStoreStation&type=zone',
success:function(response){
Ext.Msg.alert('系统提示',response.responseText);
//********************刷新***************************
refreshGridRows(zonegrid,zonestore);
},
failure:dosuccessfailure,
params:{name:s}
});
}
});
}
}
分享到:
相关推荐
总的来说,通过封装`Ext.grid.Grid`和DWR,我们可以构建出一个强大的Web应用,提供直观且高效的增删改查功能。这种技术组合在现代企业级Web应用中非常常见,因为它能够有效地处理大量数据,同时保持良好的用户交互性...
在这个"Extjs增删改查示例"中,我们将探讨如何使用ExtJS与etmvc(一个基于ExtJS的MVC模式扩展)和MySQL数据库配合,实现Web应用中的基本数据操作。 首先,ExtJS的MVC模式是其架构的核心部分,它将应用程序分为Model...
在“extjs实现增删查改”这个主题中,我们将探讨如何使用ExtJS来实现基本的数据操作功能。 首先,增删查改(CRUD,Create, Read, Update, Delete)是任何数据管理应用的核心功能。在ExtJS中,我们可以利用Grid ...
PHP作为服务器端语言,处理HTTP请求,执行业务逻辑,如数据的增删改查、验证、权限控制等。PHP还能够与MySQL数据库进行交互,存储和检索应用程序所需的数据。 MySQL是一个广泛使用的开源关系型数据库管理系统,它的...
EXT还支持Ajax异步通信,用户操作无需刷新页面即可完成数据的增删改查,提升用户体验。 在ThinkPHP+EXT的物品管理系统中,以下是一些关键知识点: 1. 数据库设计:包括物品表(Goods)、类别表(Category)、用户...
删除请求成功后,同样需要刷新GridPanel中的数据,以确保界面上的数据是最新的。 修改操作可以通过弹出一个和新增角色表单类似的窗口来实现。不过在打开窗口前,需要先从GridPanel中选中的行获取已有数据,将这些...
模型提供了对数据的增删改查操作,并支持数据验证。 2. **Store管理(Store Management)** Store是Grid的数据仓库,它可以连接到各种数据源,如JSON、XML或远程API。Store负责加载、刷新、排序和过滤数据。开发者...
在这个用户管理系统中,我们可能使用了Ext的Grid Panel来展示用户列表,Form Panel来进行用户信息的增删改查,以及Tree Panel来管理组织结构。通过Ext的数据绑定机制,前端UI可以直接与后端数据源进行同步,提升了...
当用户在Grid上执行CRUD操作时,这些操作会通过DWR调用服务器端的方法,处理数据的增删改查。 首先,我们需要在服务器端设置DWR配置,允许特定的Java类和方法被JavaScript访问。然后,在客户端,我们可以使用DWR的...
- **Node Interface**:Tree Grid的每个节点都实现了Node Interface,支持节点的增删改查操作。 - **Tree Store**:与普通的Grid Store类似,但处理的是树形数据结构。 - **Expanding and Collapsing**:节点可以...
3. **服务器端API设计**:为了支持ExtJS,服务器端需要提供一套RESTful API或者自定义的API接口,这些接口应能处理ExtJS发出的请求,执行相应操作,如数据检索、增删改查等。 4. **模型(Model)和数据存储(Data ...
在ExtJS前端,可能使用了Grid Panel来显示商品列表,Form Panel进行商品信息的编辑,Button组件用于执行增删改查操作,同时利用Store来管理数据,与服务器进行异步通信。 具体到实现过程,以下是一些可能的知识点:...
5. **CRUD操作**:了解如何使用Hibernate的Criteria API或HQL(Hibernate Query Language)执行数据库的增删改查操作。 6. **事件监听**:学习如何在ExtJS中监听用户操作,如按钮点击,以及如何触发Ajax请求。 7. ...
在测试类中,可能会展示如何加载树节点数据,以及如何处理节点的增删改查操作。 4. **Grid组件**:Grid是ExtJS中的表格控件,用于显示和编辑表格数据。测试类可能涉及如何配置列、行,以及如何绑定数据存储进行动态...
通过SQL语句,开发者可以进行数据的增删改查操作,实现图书的管理。 系统设计时,通常会有一个前端控制器(如ExtJS的Application对象)来协调各个组件和视图。这些视图与后台服务(如RESTful API)进行通信,而...