韦小宝是我的老乡

——慎思、专注,成就卓越管理
posts - 5, comments - 185, trackbacks - 1, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

ExtJS与.NET结合开发实例(Grid之批量删除篇)

Posted on 2007-11-24 12:40 CmSoft 阅读(5467) 评论(22)  编辑 收藏 所属分类: 技术之道
     上接ExtJS与.NET结合开发实例(Grid之数据显示、分页、排序篇),在此基础上实现批量删除功能。
     实现的步骤如下:
     1. 用WebService实现删除的功能(上篇有一园友提出用WebService实现,这里顺便说一下,取数据源也可以用WebService,大家可以参考删除的WebService自行实现,我这里就不在累述了)
        新建一WebService文件,命名为:DeleteProject.asmx
        代码如下:
DeleteProject.asmx.cs
     2.让我们再回到第一篇里的GridForProjectLists.js文件里,在代码最后部分找到
            id:'btnDel',
            text:'批量删除',
            tooltip:'删除',
            iconCls:'remove',
            handler:showDelDialog
    修改handler:showDelDialog为hanlder:doDel
    现在实现doDel这个function:
doDel
    以上代码加在gdProjects定义之后即可。

    实现效果如下:
   

至此已实现Grid的批量删除功能。
     后记:
     由于从VS2008 Beta2转到了RTM版(俺得跟着大家一起走呀),原先的代码略有改动,主要体现在两处:
     (1)Web.config文件中的 
       <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
       版本号在beta里是2.0.0.0,现为3.5.0.0
     (2)LINQ的变化,原先的删除使用RemoveAll+SubmitChange的方式,现在为DeleteAllOnSubmit

Feedback

#1楼    回复  引用  查看    

2007-11-24 13:50 by 代码乱了      
很不错,界面很漂亮
这个grid是extjs里面提供的吧?

#2楼    回复  引用  查看    

2007-11-24 13:54 by 阿不      
楼主,原来调用WebService不需要额外的代码和扩展吗?

#3楼    回复  引用  查看    

2007-11-24 13:55 by 阿不      
如何给WebService的WebMethod,传JSON对象参数和返回JSON对象结果的话,能支持吗?

#4楼 [楼主]   回复  引用  查看    

2007-11-24 14:28 by CmSoft      
@代码乱了
grid由extjs提供
@阿不
调用WebService不需要额外的代码和扩展,如果给WebService的WebMethod传JSON格式的string需要WebService里解析这个string

#5楼    回复  引用  查看    

2007-11-24 17:19 by Enzo      
我用的也是beta2 o(∩_∩)o...

#6楼    回复  引用    

2007-11-24 19:43 by hxling [未注册用户]
最好有源码下载呀

#7楼    回复  引用  查看    

2007-11-25 21:40 by 赵鹏      
不错,是要进入08行列了!

#8楼    回复  引用  查看    

2007-11-26 08:58 by 阿不      
@CmSoft
在.NET中,如果给WebService加上ServiceScript attribute的话,它默认返回的就是一个JSON对象了。我的意思是说,能不能像asp.net ajax那样来使用WebService

#9楼    回复  引用  查看    

2007-11-26 23:20 by Axel      
--引用--------------------------------------------------
阿不: @CmSoft
在.NET中,如果给WebService加上ServiceScript attribute的话,它默认返回的就是一个JSON对象了。我的意思是说,能不能像asp.net ajax那样来使用WebService
--------------------------------------------------------
可以,需要写一个data.store的代理

#10楼    回复  引用  查看    

2007-11-27 23:38 by .NET的春天      
复制下来,好好研究一下,楼主值得学习!

#11楼    回复  引用    

2007-11-30 10:27 by kevinmo [未注册用户]
界面效果也是EXT提供的吗?

#12楼 [楼主]   回复  引用  查看    

2007-12-05 17:26 by CmSoft      
@kevinmo
由Ext提供,另Ext 2.0最近Release了

#13楼    回复  引用    

2008-02-16 17:45 by QB [未注册用户]
博主请教单个的时候如何删除呢(也就是点击叉那个图片的时候删除本行的记录)?点击叉那个图片的时候是转到连接的那个页面,在那个页面可以删除,但我不想弹出那个页面而且能有批量删除的时候那个提示框,点击确定的时候再删除.

#14楼    回复  引用  查看    

2008-03-01 00:59 by KevinLi      
最近关注先生的系列文章颇多,我认为该谢谢jquery+asp.net进行数据操作的必要了!

#15楼    回复  引用  查看    

2008-03-01 01:04 by 工业酒精      
ext是很漂亮,就是太大了。。。。郁闷

如果是网站应用的话。。。我还是用jQuery吧
好文

#17楼    回复  引用  查看    

2008-05-20 09:51 by 木野狐(Neil Chen)      
感谢楼主的分享。

where strProjects.IndexOf(p.PROJECT_NO) > 0

这个判断有缺陷,
比如 strProjects = "11,12,13"
那么会把 id = 1, 2, 3 的记录也误判进去。
应该加上两侧的 "," 再用 IndexOf 判断。

另外用这个开发模式的话,我想操作权限控制可能都要是基于功能去分配,不能基于页面控制(否则 WebService 可能被恶意调用)。

最近也想开始用一点 Ext 了。


#18楼    回复  引用    

2008-06-08 20:55 by MIC [未注册用户]
我懒就给核心代码吧,欢迎拍砖拍瓦。看不明白就查文档吧!
function updateEdit(){
var records = store.getModifiedRecords();
if(records){
for(var i=0;i<records.length;i++){
Ext.Ajax.request({
url: 'xml.php',
params: {
a:'u',
i:records[i].get('id'),
t:records[i].get('editorTitle'),
s:records[i].get('status'),
h:records[i].get('hot'),
c:records[i].get('channelHot')
}
});
}
store.rejectChanges();
}
}

#19楼    回复  引用    

2008-06-08 20:58 by MIC [未注册用户]
@MIC
我也来个EditorGridPanel之批量修改仅供同行参考哦--这是标题

#20楼    回复  引用    

2008-06-26 19:37 by 安阳 [未注册用户]
怎样对editorgridpanel 的数据合法性进行验证呢
类似于 addUserForm.form.isValid()
我这样写的 userEditorGrid.colModel.editor.isValid()
报错 说 userEditorGrid.colModel.editor is undefined

#21楼    回复  引用    

2008-08-27 16:27 by efreer [未注册用户]
老大有没有一个完整的asp.net webservice+ext2.0 添加,删除,修改,显示的完整demo啊,谢谢,一直无从下手!!!

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-11-24 12:46 编辑过


相关链接: