ASP.NET 验证控件与Attributes.Add 脚本并存

来源:互联网 发布:社交网络 英文剧本 编辑:程序博客网 时间:2024/05/16 18:53
 

ASP.NET 验证控件与Attributes.Add 脚本并存

现在在ASP.NET中,我们也要实现这样的方式就不那么简单了,因为页面验证我们可以采用ASP.NET中的validator控件,同时只要把button的causeValidator设为true就可以了 。问题就在于,如何实现页面验证以后弹出提示确认框。

我们一般是采用this.btnAdd.Attributes.Add("onclick","javascript:return confirm('sure?')")的方式实现弹出确认,而这只适合于不需要页面验证的button。

因此,为了解决这样的问题,我们可以有几种方式:

第一:对于CausesValidation的button,其实在页面生成时就是生成了这样的语句:onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); "

所以我们可以把button变为不允许CausesValidation,然后在Attributes.Add("onclick","if (typeof(Page_ClientValidate) == 'function') {if(Page_ClientValidate()){return confirm('sure?')}else{return false;}}")

这样我试过了,是可以实现的。

第二:就是重新继承一个button,添加上这个弹出功能,这样的话,只要用自己的button就可以很方便的实现弹出效果 参见:http://www.metabuilders.com/

这个网站提供了这样的控件,而且有源代码供学习哦。

效果图见:http://www.metabuilders.com/Tools/ConfirmedButtons.aspx

我不知道有没有更好的解决方式,希望大家交流.