asp.net+C# 怎样才能用Validation控件控制TextBox中的数据是0.25的倍数? 用CostomValidation验证,自己写JavaScript 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 好像不行.你可以做一个Label提示输入错误,并在后台检查用户输入是否0.25的倍数。如果不是则把Label.Visible设为true if(int.Parse(tbTest.Text.Trim()/0.25==整数)){ ...}else{ ...} 照搬QuickStart的例子,修改了下<html><head> <script language="C#" runat=server> void ValidateBtn_OnClick(object sender, EventArgs e) { if (Page.IsValid) { lblOutput.Text = "页有效!"; } else { lblOutput.Text = "页无效!:-("; } } void ServerValidate (object source, ServerValidateEventArgs value) { try { Double num = Double.Parse(value.Value); if (num%.25 == 0) { value.IsValid = true; return; } } catch (Exception) {} value.IsValid = false; } </script></head><body><h3><font face="宋体">CustomValidator 示例</font></h3><p><form runat="server"> <asp:Label id=lblOutput runat="server" Text="输入一个数(0.25的倍数):" Font-Name="宋体" Font-Size="10.5pt" /><br> <p> <asp:TextBox id=Text1 runat="server" /> <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ControlToValidate="Text1" ErrorMessage="请输入一个数字" Display="Dynamic" Font-Name="verdana" Font-Size="10pt"> </asp:RequiredFieldValidator> <asp:CustomValidator id="CustomValidator1" runat="server" ControlToValidate="Text1" ClientValidationFunction="ClientValidate" OnServerValidate="ServerValidate" Display="Static" Font-Name="verdana" Font-Size="10pt"> 不是0.25的倍数! </asp:CustomValidator> <p> <asp:Button text="验证" onclick="ValidateBtn_OnClick" runat="server" /> <script language="javascript"> function ClientValidate(source, arguments) { if (arguments.Value%.25 == 0) arguments.IsValid = true; else arguments.IsValid = false; } </script></form></body></html> 可以这样:<form id="form1" runat="server"> // 要验证的控件 <asp:TextBox id="TextBox1" runat="server" /> // 定义CustomValidator <asp:CustomValidator ControlToValidate="TextBox1" OnServerValidate="ServerValidation" Display="static" Runat="server"> * </asp:CustomValidator> <br /> <asp:Button id="Button1" Text="Click here" runat="server" /></form>然后用void ServerValidation (object source, ServerValidateEventArgs arguments) { try { Double i = Double.Parse(arguments.Value); arguments.IsValid = ((i*4) == System.Math.Floor(i*4)); } catch { arguments.IsValid = false; }}即可实现服务器端的验证 求sql 语句 Asp.net 动态生成的TreeView,如何动态获得节点的值 关于数字分页问题 为空等于0~ Visual Web Developer的速成版和企业版相比差在哪啊? |M| 求ASP.NET 单点登录的编程思想和实现 数据交互 求助Web Form 中Datagrid 的打印问题!急啊!!!那位“高手”可以指点一下啊! 用file控件上传文件,取路径把"\"看成转义符了,怎么回事啊 请问大家是怎样实现这个检索的?sql语句 怎么在两个页面间传递数组? 菜的问题:array 和arraylist 的区别?
你可以做一个Label提示输入错误,并在后台检查用户输入是否0.25的倍数。如果不是则把Label.Visible设为true
{
...
}
else
{
...
}
<head>
<script language="C#" runat=server> void ValidateBtn_OnClick(object sender, EventArgs e) { if (Page.IsValid) {
lblOutput.Text = "页有效!";
}
else {
lblOutput.Text = "页无效!:-(";
}
} void ServerValidate (object source, ServerValidateEventArgs value) {
try {
Double num = Double.Parse(value.Value);
if (num%.25 == 0) {
value.IsValid = true;
return;
}
}
catch (Exception) {} value.IsValid = false;
} </script></head>
<body><h3><font face="宋体">CustomValidator 示例</font></h3>
<p><form runat="server"> <asp:Label id=lblOutput runat="server"
Text="输入一个数(0.25的倍数):"
Font-Name="宋体"
Font-Size="10.5pt" /><br> <p> <asp:TextBox id=Text1 runat="server" /> <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server"
ControlToValidate="Text1"
ErrorMessage="请输入一个数字"
Display="Dynamic"
Font-Name="verdana" Font-Size="10pt">
</asp:RequiredFieldValidator> <asp:CustomValidator id="CustomValidator1" runat="server"
ControlToValidate="Text1"
ClientValidationFunction="ClientValidate"
OnServerValidate="ServerValidate"
Display="Static"
Font-Name="verdana" Font-Size="10pt">
不是0.25的倍数!
</asp:CustomValidator> <p> <asp:Button text="验证" onclick="ValidateBtn_OnClick" runat="server" /> <script language="javascript"> function ClientValidate(source, arguments)
{
if (arguments.Value%.25 == 0)
arguments.IsValid = true;
else
arguments.IsValid = false;
}
</script></form>
</body>
</html>
<form id="form1" runat="server">
// 要验证的控件
<asp:TextBox id="TextBox1" runat="server" /> // 定义CustomValidator
<asp:CustomValidator ControlToValidate="TextBox1" OnServerValidate="ServerValidation" Display="static" Runat="server">
*
</asp:CustomValidator>
<br />
<asp:Button id="Button1" Text="Click here" runat="server" />
</form>
然后用
void ServerValidation (object source, ServerValidateEventArgs arguments) {
try {
Double i = Double.Parse(arguments.Value);
arguments.IsValid = ((i*4) == System.Math.Floor(i*4));
}
catch {
arguments.IsValid = false;
}
}
即可实现服务器端的验证