Asp.net 是否在客户端验证摘要控件中的自定义错误上显示自定义消息?
我正在使用验证摘要控件显示asp.net验证控件的错误消息Asp.net 是否在客户端验证摘要控件中的自定义错误上显示自定义消息?,asp.net,asp.net-2.0,asp.net-3.5,Asp.net,Asp.net 2.0,Asp.net 3.5,我正在使用验证摘要控件显示asp.net验证控件的错误消息 页面中的某些验证未使用验证控件。我使用自定义javascript和jquery代码来实现这些功能。请指导我如何在验证摘要控件和asp.net验证控件中显示这些错误的消息。关键是使用自定义验证控件。此控件支持客户端脚本编写(因此您仍然可以使用javascript代码编写),但仍与asp.net提供的验证框架相关联 从文章中可以看出,类似这样的情况: <SCRIPT LANGUAGE="JavaScript"> function
页面中的某些验证未使用验证控件。我使用自定义javascript和jquery代码来实现这些功能。请指导我如何在验证摘要控件和asp.net验证控件中显示这些错误的消息。关键是使用自定义验证控件。此控件支持客户端脚本编写(因此您仍然可以使用javascript代码编写),但仍与asp.net提供的验证框架相关联 从文章中可以看出,类似这样的情况:
<SCRIPT LANGUAGE="JavaScript">
function validateLength(oSrc, args){
args.IsValid = (args.Value.length >= 8);
}
</SCRIPT>
<asp:Textbox id="text1" runat="server" text="">
</asp:Textbox>
<asp:CustomValidator id="CustomValidator1" runat=server
ControlToValidate = "text1"
ErrorMessage = "You must enter at least 8 characters!"
ClientValidationFunction="validateLength" >
</asp:CustomValidator>
函数validateLength(oSrc、args){
args.IsValid=(args.Value.length>=8);
}
正如Patrick所说,您可以添加自定义验证程序控件来代替自定义javascript/jQuery代码。然后可以相应地添加摘要验证控件。您还可以更改javascript代码中的错误消息。请检查以下代码以供参考
<script type="text/javascript">
function validatetxtLength(source, args)
{
var txtVal=document.getElementById('<%=txtusername.ClientID %>').value;
if(txtVal=="")
{
document.getElementById('<%=custxtValidator.ClientID %>').setAttribute("errormessage","Please Enter the User Name");
args.IsValid=false;
}
else if(txtVal.length>9)
{
document.getElementById('<%=custxtValidator.ClientID %>').setAttribute("errormessage","Username must have less than 10 characters");
args.IsValid=false;
}
else
{
args.IsValid=true;
}
return;
}
</script>
<div>
<table cellpadding="0" cellspacing="0" border="0" width="712px">
<tr>
<td colspan="3" align="center">
Validator Testing
</td>
</tr>
<tr>
<td>
Please Enter your User Name:
</td>
<td>
<asp:TextBox ID="txtusername" runat="server" Width="150px"></asp:TextBox>
</td>
<td>
<asp:CustomValidator ID="custxtValidator" runat="server" ErrorMessage="User Name must have less than 10 characters"
Text="*" ForeColor="Red" ClientValidationFunction="validatetxtLength"></asp:CustomValidator>
</td>
</tr>
<tr>
<td colspan="3" align="center">
<asp:Button ID="btnsubmit" runat="server" Text="Submit" />
</td>
</tr>
</table>
<asp:ValidationSummary ID="ValidationSummary1" HeaderText="Please check below validations:"
runat="server" DisplayMode="BulletList" EnableClientScript="true" />
</div>
函数validatetxtLength(源,参数)
{
var txtVal=document.getElementById(“”).value;
如果(txtVal==“”)
{
document.getElementById(“”).setAttribute(“errormessage”,“请输入用户名”);
args.IsValid=false;
}
否则如果(txtVal.length>9)
{
document.getElementById(“”).setAttribute(“errormessage”,“用户名必须少于10个字符”);
args.IsValid=false;
}
其他的
{
args.IsValid=true;
}
返回;
}
验证器测试
请输入您的用户名:
这可能对你有用。+1问个好问题。您尝试了什么?没有尝试过任何东西,实际上我不知道验证摘要客户端API。在尝试了几个错误的答案后,终于成功了。谢谢