ASP.NET验证控件客户端验证成功或失败之后执行js脚本(原创) - Qzone日志
来源:百度文库 编辑:神马文学网 时间:2024/04/28 00:25:52
要求:表单中用了验证控件,如何能在验证控件的客户端脚本验证成功之后,执行一段js脚本,比如弹出确认框,然后再提交,点取消则不提交。如果验证控件没通过,比如用户没填名字的话,不会提交。
网上看了一些文章,有的说不可能,有的则是使用服务端代码,需要提交页面后才能正确执行。
下面的代码的测试环境是VS.NET2008+IE8,没有后台代码:
原理:ASP.NET验证控件在生成网页的时候会变成一大堆的客户端 Javascript 脚本,用来在客户端验证。
1. 先敲入以下代码(ValidateControl.aspx):
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ValidateControl.aspx.cs" Inherits="ValidateControl" %>
验证控件,成功后确认是否提交数据
2. 运行该页面,在IE中“查看原文件”
生成下面这些关键代码(摘录关键的几行):
...
<formname="form1" method="post" action="ValidateControl.aspx" language="javascript" onsubmit="javascript:return WebForm_OnSubmit();" id="form1">
...
function WebForm_OnSubmit() {
if (typeof(ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) return false;
return true;
}
可以看出form1表单是通过WebForm_OnSubmit函数验证,如果返回false则表示失败,不提交数据;true提交数据
而WebForm_OnSubmit函数又是调用ValidatorOnSubmit函数来执行验证的,ValidatorOnSubmit返回false表示验证失败。
3. 利用ValidatorOnSubmit函数验证控件
回到第一步最初的代码,将
网上看了一些文章,有的说不可能,有的则是使用服务端代码,需要提交页面后才能正确执行。
下面的代码的测试环境是VS.NET2008+IE8,没有后台代码:
原理:ASP.NET验证控件在生成网页的时候会变成一大堆的客户端 Javascript 脚本,用来在客户端验证。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ValidateControl.aspx.cs" Inherits="ValidateControl" %>
生成下面这些关键代码(摘录关键的几行):
...
<
...
function
if
return
}
可以看出form1表单是通过WebForm_OnSubmit函数验证,如果返回false则表示失败,不提交数据;true提交数据
而WebForm_OnSubmit
回到第一步最初的代码,将
ASP.NET验证控件客户端验证成功或失败之后执行js脚本(原创) - Qzone日志
ASP.NET验证控件客户端验证成功或失败之后执行js脚本(原创)
ASP.NET中自己写JS验证控件和提交(原创)
ASP.NET验证控件详解
ASP.NET 服务器控件的验证
ASP.NET六种验证控件
使用自定义函数对 ASP.NET 服务器控件进行验证
使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航
js通用表单验证
asp.net(C#) 生成随机验证码的代码
在ASP.NET中设置html文件的访问验证
Asp.net中基于Forms验证的角色验证授权 转
Validator.js 很好用的客户端表单验证 - jonsion - JavaEye技...
【原创】asp.net中数据显示控件浅谈
ASP验证码刷新代码
电子邮件email验证代码-asp
javascript验证Validator.js--入门讨论
js验证常用正则表达式集锦
超好用的JS验证框架(LiveValidation)
js验证常用正则表达式集锦
js表单验证控制代码大全
转载js表单验证控制代码大全
自定义验证控件CustomValidator的用法实例
自定义验证控件CustomValidator的用法实例