利用事件执行顺序,轻松实现Web页面的对话框
2010-12-13 10:00 月光下的凤尾族 阅读(499) 评论(0) 编辑 收藏 举报一般在做C/S应用的时候,我们都会发现,对话框太容易实现了。比如在编辑主子表这样的常用操作下,弹出一个对话框,用户录入数据,保存并关闭对话框,主界面刷新,子表的列表更新。比如我们可能会写这样的代码:
private void btnNew_Click(object sender, EventArgs e) { FormPersonEdit formPersonEdit = new FormPersonEdit(); if (formPersonEdit.ShowDialog() == DialogResult.Ok) { PersonEntity person = formPersonEdit.GetPerson(); ... } }
这样的交互操作体验是很不错的。那么,如果使用Web来开发,有没有简单的方法实现类似的做法呢?实际上有多种方式来做对话框,这里先挑最简单的一种,就是直接用ShowModalDialog方法来实现。
Asp.net页面里,首先是要执行客户端事件的,然后才会产生服务端事件。利用这一点,就有了操作余地,具体做法如下:
1.增加一个Button按钮,实现它的两个事件,一个是OnClientClick,一个是OnClick。
2.在OnClientClick里,打开一个模式对话框,做FormPersonEdit的操作,做完后把数据写入后台或者写入Session都成。
3.在FormPersonEdit页面关闭后,Button的OnClick事件才会被触发,这个时候,再从后台或者Session里取数据,刷新主页面的列表,就成了,当然也可以用Ajax技要无刷新。实现出来的效果,和WinForm的几乎一致。
欢迎转载,转载请注明出处及署名:月光下的凤尾族:http://www.cnblogs.com/demo/
欢迎关注博主 谢谢