DHTML技巧--中止网页的提交 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- DHTML技巧--中止网页的提交 (http://www.webasp.net/article/13/12638.htm) |
| -- 作者:未知 -- 发布日期: 2004-08-27 |
| ASP.NET改变了我们的编程方法,使得开发BS程序更加简单。但如果大量使用服务器控件势必会造成网页频繁提交,操作极不友好,也增加了服务器的负担。把一些必要的验证工作放在客户端执行,只有通过验证时才进行提交,就可以大大减少网页的刷新次数。
例如当我们按下“删除”按钮时,先在客户端进行一下确认:弹出一个“是否真的要删除”的对话框。当用户按下“是”是才提交至服务器执行删除程序。如果按下否,则终止后绪的提交动作。提交是不要进行太多可考虑,因为服务器的按钮控件是会自动完成,现在我给大家介绍终止提交的方法: 在DHTML中,每一个事件的处理都可以用return false来终止后绪动作的执行。如<BODY oncontextmenu = “javascript: return false;”>可以禁止页面上的右键菜单。对于服务器的按钮来说,我们可以在第一次载入时(PageLoad)服务器端给它加入一个OnClick属性用来执行客户端角本: this.DelButton.Attribute.Add(”OnClick”, “javascript:return delConfirm();”);在用户按下“删除”按钮时,它会先执行客户的的delConfirm()函数。注意:红色字体的javascript:return (用来接收函数的返回结果)及;号(按钮的提交动作将以角本方式注册在止之;号之后,如果不用;号来隔开将会出现语法错误)是必须的。而在客户端的函数中必须要有返回结果,其中return false;将终止后面的角本操作,而其它返回结果将继续执行。 这样删除处理的完整方法如下: 服务器端: private void Page_Load() { ... if (!this.IsPostBack) { ... this.delButton.Attribute.Add(“OnClick“, “javascript:return delConfirm();“); ... } ... } ... private void delButton_Click(object sender, EventArgs e) { ... } ... 客户端: ... <SCRIPT language=javascript> function delConfirm() { return confirm(“你真的要删除吗?“); } </SCRIPT> ... |
| webasp.net |