`

同一个页面用Js和服务器验证控件OnClientClick提交问题

阅读更多

http://www.cnblogs.com/aprillee/archive/2008/05/07/1017395.html

实现功能:

点击Button按钮的OnClientClick事件,不会影响服务器验证控件的验证功能
(验证不通过,则不提交服务器页面)

背景:

1.在同一个页面有服务器验证控件(RegularExpressionValidator),多个
2. 有Javascript函数,实现验证和其他功能
3. Button按钮,有两个事件OnClick,OnClientClick
方法:

HTML页面
验证控件:

Code
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><asp:TextBoxID="txt_Test"runat="server"Width="120px"MaxLength="8"></asp:TextBox>
<asp:RegularExpressionValidatorID="validator_Test"runat="server"ControlToValidate="txt_Test"
ErrorMessage
="数字"ValidationExpression="^\d+$"></asp:RegularExpressionValidator>
按钮:
<asp:ImageButtonID="btnPutin"runat="server"Text="提交"OnClick="btnPutin_Click"
OnClientClick
="if(CheckClientValidate()){returnCheckNullValue()}"ImageUrl="../images/submit1.gif"/>

脚本:
<scripttype="text/javascript">
//返回,服务器验证控件是否成功
//Author:ADDbyAprilleeat2007-12-27
//Example:OnClientClick="if(CheckClientValidate()){returnCheckNullValue()}"
functionCheckClientValidate(){

Page_ClientValidate();
if(Page_IsValid){
returntrue;
}
else{
returnfalse;
}

}

//以下为自定义脚本功能
functionCheckNullValue()
{
alert(
'Test');
}

</script>
分享到:
评论

相关推荐

    超强的ASP.NET自定义客户端验证控件

    1. **定义验证控件**: 创建一个继承自`System.Web.UI.WebControls.BaseValidator`的类,该基类提供了验证控件的基本结构。你需要重写一些关键方法,如`EvaluateIsValid`,用于执行实际的验证逻辑。 2. **客户端脚本...

    Web服务器控件使用

    - 这些验证控件既支持服务器端验证也支持客户端验证,可以在用户提交表单之前就给出即时反馈。 - 支持自定义验证逻辑,开发者可以根据实际需求编写自定义验证控件。 #### 3. 服务器控件中的客户端功能 - **...

    asp控件和html控件的概念区分__3.docx

    在功能实现上,ASP控件的一个关键特性是它们通常需要页面提交才能触发事件处理。这意味着用户交互,如按钮点击,会导致整个页面的POST请求,然后服务器端的事件处理器被调用。然而,HTML控件可以通过其`type`属性...

    添加页面和控件事件视频教程

    在ASP.NET(C#)开发中,事件处理是构建交互式Web应用..."添加页面和控件事件.exe"可能是一个实际的视频播放程序,而"添加页面和控件事件"可能包含了课程相关的资料,如示例代码或文档,帮助你深入学习和实践这些概念。

    防止表单重复提交(asp.net )

    - **使用AntiForgeryToken**:在`&lt;asp:Button&gt;`控件的`OnClientClick`属性中添加JavaScript代码,阻止表单重复提交。同时,在服务器端使用`[ValidateAntiForgeryToken]`装饰器进行验证。 - **使用Session**:在...

    关于asp.net button按钮的OnClick和OnClientClick事件

    在服务端,你可以使用验证控件如`RequiredFieldValidator`、`CompareValidator`等进行验证,这些验证控件会在`Page_Load`事件中自动运行,而无需额外处理`OnClick`事件。 当`OnClientClick`和`OnClick`一起使用时,...

    asp.net客户端动态生成控件

    4. **保持回话状态**:如果动态生成的控件需要在多个页面之间保持状态,或者在POST回服务器时需要处理这些数据,可能需要借助于隐藏字段、视图状态或使用AJAX异步提交。视图状态可以在服务器端存储控件信息,但对...

    通过js实现的基于ASP.NET实现的输入验证消息面板

    要实现基于JavaScript的验证,我们可以为每个验证控件添加一个对应的JS函数。例如,对于一个RequiredFieldValidator,我们可以在HTML标记中添加一个`onclientclick`属性,调用自定义的JavaScript函数来检查输入字段...

    .NET面试题汇总.docx

    - .NET框架提供多种数据验证控件,如RequiredFieldValidator,CompareValidator等,可以在服务器端或客户端进行验证,确保用户输入的数据符合预期格式和条件。 4. 正则表达式: - 正则表达式是一种强大的文本模式...

    道不远人 解析Asp.net控件的十个列子源码

    8. **验证控件**:Asp.net提供了多种验证控件,如`RequiredFieldValidator`、`CompareValidator`和`RegularExpressionValidator`,用于确保用户输入的数据符合预期格式。源码中的例子将演示如何设置验证规则和处理...

    ASP.NET 3.5 Web 服务器控件详解【txt手机版】

    `AdRotator` 控件是 ASP.NET 提供的一个用于显示广告轮播的 Web 服务器控件。该控件允许用户通过 XML 文件来管理广告,提供了一个灵活的方式来控制广告的展示。 **属性说明:** - **AdvertisementFile**: 指定包含...

    基于ASP.NET的采用js脚本实现multiline textbox 的字符长度验证函数

    要实现对multiline textbox的字符长度验证,我们可以编写一个JavaScript函数,这个函数通常会在用户尝试提交表单时调用。函数的主要任务是获取multiline textbox的文本,计算其长度,并与预设的最大长度进行比较。 ...

    asp.net下OnClientClick的妙用!

    我们经常需要使用 JavaScript 来进行客户端验证,但是如果我们使用 HTML 控件来实现按钮 clicks 事件,那么验证通过后无法调用服务器端代码,而如果使用服务器端控件,验证不通过则需要刷新页面,这样会给用户带来...

    aspx控件

    1. **添加控件**:首先,在ASP.NET页面的HTML标记中添加一个ASP.NET服务器控件,如`&lt;asp:Button&gt;`,并设置其`Text`属性为“确认”或其他提示性文本。 2. **配置属性**:为了实现确认对话框,需要将按钮的`...

    Asp.net弹出对话框控件

    综上所述,Asp.net弹出对话框控件的实现涉及到客户端JavaScript库的使用,服务器端Asp.net控件的交互,以及动态生成和配置对话框内容。通过理解这些知识点,开发者能够构建出功能丰富、用户体验良好的Web应用程序。

    ASP.NET快速入门教程

    ASP.NET是Microsoft开发的一个服务器端技术,用于构建动态网页和Web应用程序。它基于.NET Framework,提供了丰富的类库和工具支持,使得开发者能够更加高效地创建复杂的Web应用。本文将根据提供的部分教程内容,详细...

    asp.net日历控件

    最后,对于大型项目,可以考虑封装My97DatePicker为一个自定义的ASP.NET用户控件,这样可以在整个应用中复用,并且方便统一管理配置和样式。这样做的好处是提高代码的可维护性和一致性。 总的来说,ASP.NET的日历...

    点击按钮显示fileupload控件里的图片

    1. **页面设计**:首先需要在页面上放置一个`FileUpload`控件用于选择图片文件,一个`Button`控件用于触发预览操作,以及一个`Image`控件用于展示预览图像。 2. **客户端脚本**:通过编写JavaScript代码来监听`...

    ASPNETStopPostbackInJS

    VBASPNETStopPostbackInJS.zip和CSASPNETStopPostbackInJS.zip这两个压缩包可能包含了使用Visual Basic .NET(VB.NET)和C#实现的示例代码,供你参考和学习如何在ASP.NET中运用JavaScript阻止页面回传。解压并查看...

Global site tag (gtag.js) - Google Analytics