大问题~~~~~~大问题~~~~~~~急啊

snakegmj 2005-07-22 10:57:58
我做一个提交信息的表单,在点击提交按钮时想对其中各文本框输入的内容进行验证,如果空或填错就弹出提示框,怎么能在关闭提示框以后回到填信息的页面并且不将已填信息存入数据库
...全文
120 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
hchxxzx 2005-07-22
  • 打赏
  • 举报
回复
使用ASP.NET自身的验证控件,那么,当验证不通过时,将不会提交到服务端.
达到你的目的,以此方法最简单,直接使用,无需烦恼.
稍微有点无敌 2005-07-22
  • 打赏
  • 举报
回复
用正则表达式啊!!配合验证控件一起使用啊,很快的
helimin19 2005-07-22
  • 打赏
  • 举报
回复
一般采用客戶端js驗證,
<input type="button" onclick="return checkForm();" runat="server" />

function checkForm()
{
//進行表單驗證
}
oscarklzhu 2005-07-22
  • 打赏
  • 举报
回复
服务器验证控件搞定
crossrowman 2005-07-22
  • 打赏
  • 举报
回复
晕~~验证控件,RequiredFieldValidator,一下搞定.
jimu8130 2005-07-22
  • 打赏
  • 举报
回复
服务端textbox因为视图状态的关系会保存提交前的值,就你的功能而言勇js来做比较合适
  • 打赏
  • 举报
回复
举个例子(有省略)


<asp;label id=showError font-forColor="red" visible="false"></asp:label>
请输入<asp:textbox id=inputValue></asp:inputvalue>
<asp:button id=Go></asp:button>


sub Go_Click()
if inputBalue.Text.trim=string.Empty then
with showError
.text="输入了空值。"
.visible=true
end with
elseif inputBalue.Text.trim.len<3 then
with showError
.text="至少输3位。"
.visible=true
end with
else
try
saveToDatabase
inputValue.text=""
showError.visible=false
catch ex as exception
with showError
.text=ex.message
.visible=true
end with
end try
end if
end sub
  • 打赏
  • 举报
回复
所有的textbox,如果你不清除其text属性,默认就会保持客户端输入的值。至于是否保存到数据库,完全是你程序控制的事。你的问题因此其实很奇怪。我猜想你一定是学了坏的编程模式,造成不保存数据库的textbox数据会丢失。
jsyhello 2005-07-22
  • 打赏
  • 举报
回复
<%@ Page language="c#" Codebehind="Login.aspx.cs" AutoEventWireup="false" Inherits="Resident.Login" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>登录窗体代码</title>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<body oncontextmenu='return false'>
<form id="frmLogin" method="post" runat="server">
<table height="160" cellSpacing="0" cellPadding="0" width="174" align="center" border="0" background="../Images/centerback.gif">
<tr height="40">
<td vAlign="top" align="center"><IMG src="../Images/logintop.gif" width="174"></td>
</tr>
<tr>
<td vAlign="bottom" align="center" height="27">帐  号:<input class="txt_normal" id="txtID" onblur="className='txt_normal'" onfocus="className='txt_edit'"
type="text" maxLength="20" size="13" name="txtID">
</td>
</tr>
<tr>
<td vAlign="bottom" align="center" height="27">密  码:<input name="txtPasswd" type="password" maxlength="20" id="txtPasswd" class="txt_normal"
onFocus="className='txt_edit'" onBlur="className='txt_normal'" size="13">
</td>
</tr>
<tr>
<td vAlign="bottom" align="center" height="25"><asp:radiobutton id="rdbUser" Runat="server" GroupName="usertype" Checked="True" Text="个人"></asp:radiobutton>  
<asp:radiobutton id="rdbEnt" Runat="server" GroupName="usertype" Text="企业"></asp:radiobutton></td>
</tr>
<tr>
<td vAlign="bottom" align="center" height="27"><asp:imagebutton id="btnLogin" Runat="server" ImageUrl="../Images/btnLogin.gif" AlternateText="登 录"></asp:imagebutton>    <input type="image" name="btnReg" id="btnReg" onclick="return RegClick();" src="../Images/btnReg.gif"
alt="注 册" border="0"></td>
</tr>
<tr>
<td vAlign="top" height="14"><IMG height="14" src="../Images/BottomBack.gif" width="174"></td>
</tr>
</table>
<script language="javascript">
function vdf(theForm)
{
theForm.txtID.value=theForm.txtID.value.replace(/[ %']+/g,"");
if (theForm.txtID.value!="")
{
if (theForm.txtID.value.search(/^[0-9a-zA-Z_\-\/\.\?\=]+$/)==-1)
{
alert("输入的帐号包含非法字符!");
theForm.txtID.focus();
theForm.txtID.select();
return false;
}
}
else
{
alert("帐号不能为空!");
theForm.txtID.focus();
theForm.txtID.select();
return false;
}
theForm.txtPasswd.value=theForm.txtPasswd.value.replace(/[ %']+/g,"");
if (theForm.txtPasswd.value!="")
{
if (theForm.txtPasswd.value.search(/^[0-9a-zA-Z_\-\/\.\?\=]+$/)==-1)
{
alert("输入的密码包含非法字符!");
theForm.txtPasswd.focus();
theForm.txtPasswd.select();
return false;
}
}
else
{
alert("密码不能为空!");
theForm.txtPasswd.focus();
theForm.txtPasswd.select();
return false;
}
}

function RegClick()
{
return false;
}
</script>
</form>
</body>
</HTML>

代码:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!Page.IsPostBack)
{
// 客户端验证
btnLogin.Attributes.Add("onclick","return vdf(this.form);");
}
}
designonline 2005-07-22
  • 打赏
  • 举报
回复
javascript判断。例如
function checkform(Frm){
var flag=true;
if(Frm.ID.value==1)
{
if(fucCheckNUM(Frm.Money.value)==0)
{
alert("总金额必须为数字!");
Frm.HouseMoney.focus();
flag=false;
}
}

if((confirm("确定保存内容吗?"))==true) {
flag=true;
}
else
{
flag=false;
}
return flag;
}
<form action="../../C.aspx" method="post" ID="Form1" onSubmit='return checkform(this)'>
jsyhello 2005-07-22
  • 打赏
  • 举报
回复
1、使用客户端javascript验证
2、使用ASP.NET的验证控件
tigerwen01 2005-07-22
  • 打赏
  • 举报
回复
给你一个例子参考:

<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312"%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>会员注册 信息填写</title>
</head>
</head>

<body>

<h3 align="center"><font face="宋体">会员注册信息填写表单</font></h3>

<form method=post action="RegMemberInfoSaveOk.aspx" runat=server>
<hr width=600 size=1 noshade>

<center>

<!-- sign-in -->
<table border=0 width=600>
<tr><td colspan=3>
<table border=0 cellpadding=0 cellspacing=0 width="100%">
<tr><td>
<font face=宋体,geneva,arial size=-1><b>登录信息</b></font>
</td></tr>
</table>
</td></tr>
<tr>
<td align=right><font face=宋体 size=2>用户ID:</font></td>
<td><asp:TextBox ID="userid" Width="200px" MaxLength="60" runat="server"/></td>
<td><asp:RequiredFieldValidator ID="userValidation"
ControlToValidate="userid"
Display="Dynamic"
ErrorMessage="* 请输入用户ID。"
Font-Name="Verdana" Font-Size="12"
runat="server"/></td>
</tr>
<tr>
<td align=right>
<font face=宋体 size=2>电子邮件地址:</font>
</td>
<td>
<asp:TextBox id=email width=200px maxlength=60 runat=server />
</td>
<td>
<asp:RequiredFieldValidator id="emailReqVal"
ControlToValidate="email"
ErrorMessage="* 请填写电子邮件。"
Display="Dynamic"
Font-Name="Verdana" Font-Size="12"
runat="server"/>

<asp:RegularExpressionValidator id="emailRegexVal"
ControlToValidate="email"
ErrorMessage="电子邮件。"
Display="Dynamic"
ValidationExpression="^[\w-]+@[\w-]+\.(com|net|org|edu|mil)$"
Font-Name="Arial" Font-Size="11"
runat=server>
不是有效的电子邮件地址。必须遵循此格式:email@host.domain。
</asp:RegularExpressionValidator>
</td>
</tr>

<tr>
<td align=right>
<font face=宋体 size=2>密码:</font>
</td>
<td>
<asp:TextBox id=passwd TextMode="Password" maxlength=20 runat=server/>
</td>
<td>
<asp:RequiredFieldValidator id="passwdReqVal"
ControlToValidate="passwd"
ErrorMessage="* 请输入密码。"
Display="Dynamic"
Font-Name="Verdana" Font-Size="12"
runat="server"/>

</td>
</tr>
<tr>
<td align=right>
<font face=宋体 size=2>重新输入密码:</font>
</td>
<td>
<asp:TextBox id=passwd2 TextMode="Password" maxlength=20 runat=server/>
</td>
<td>
<asp:RequiredFieldValidator id="passwd2ReqVal"
ControlToValidate="passwd2"
ErrorMessage="* 请输入确认密码。"
Display="Dynamic"
Font-Name="Verdana" Font-Size="12"
runat="server"/>

<asp:CompareValidator id="CompareValidator1"
ControlToValidate="passwd2" ControlToCompare="passwd"
ErrorMessage=""
Display="Static"
Font-Name="Arial" Font-Size="11"
runat=server>
两次输入的密码不一致,重新输入密码。
</asp:CompareValidator>
</td>
</tr>
<tr><td colspan=3> </td></tr>


<!-- personalization information -->
<tr><td colspan=3>
<table border=0 cellpadding=0 cellspacing=0 width="100%">
<tr><td><font face=宋体,geneva,arial size=-1>
<b>个人信息</b></font>
</td></tr>
</table>
</td></tr>
<tr>
<td align=right>
<font face=宋体 size=2>名字:</font>
</td>
<td>
<asp:TextBox id=fn maxlength=20 width=200px runat=server />
</td>
<td>
</td>
</tr>
<tr>
<td align=right>
<font face=宋体 size=2>性别:</font>
</td>
<td>
<ASP:RadioButtonList id="sex" Font-Name="Arial" RepeatLayout="Flow" runat=server>
<asp:ListItem Selected="true">男</asp:ListItem>
<asp:ListItem>女</asp:ListItem>
</ASP:RadioButtonList>
</td>
<td>
</td>
</tr>
<tr>
<td align=right>
<font face=宋体 size=2>地址:</font>
</td>
<td>
<asp:TextBox id=address width=200px runat=server />
</td>
<td>
</td>
</tr>
<tr>
<td align=right><font face=宋体 size=2>省份:</font></td>
<td><asp:DropDownList ID="state" runat="server">
<asp:ListItem Value="null">-省份-</asp:ListItem>
<asp:ListItem>海南省</asp:ListItem>
<asp:ListItem>广东省</asp:ListItem>
<asp:ListItem>北京市</asp:ListItem>
<asp:ListItem>上海市</asp:ListItem>
</asp:DropDownList></td>
<td> </td>
</tr>
<tr>
<td align=right><font face=宋体 size=2>邮政编码:</font>
</td>
<td> <ASP:TextBox id=zip width=60px maxlength=5 runat=server />
</td>
<td>
<asp:RegularExpressionValidator id="RegularExpressionValidator1"
ControlToValidate="zip"
ErrorMessage=""
ValidationExpression="^\d{5}$"
Display="Static"
Font-Name="Arial" Font-Size="11"
runat=server>
* 邮政编码必须是 5 位数字
</asp:RegularExpressionValidator>
</td>
</tr>
<tr>
<td align=right>
<font face=宋体 size=2>电话:</font>
</td>
<td>
<asp:TextBox id="phone" maxlength=20 runat="server" />
</td>
<td>
<asp:RequiredFieldValidator id="phoneReqVal"
ControlToValidate="phone"
ErrorMessage="* 请填写联系电话。"
Display="Dynamic"
Font-Name="Verdana" Font-Size="12"
runat="server"/>

</td>
</tr>
<tr><td colspan=3> </td></tr>

</table>

<p>
<input runat="server" type=submit value="注册">
<p>

<hr width=600 size=1 noshade>


</form>
</center>


</body>
</html>

sunnystar365 2005-07-22
  • 打赏
  • 举报
回复
用服务器端验证控件啊
RequiredFieldValidator1可以判断文本框内容是否为空
属性ControlToValidate:设置你要判断的文本款的ID
属性ErrorMessage:设置你想提示的语句

RegularExpressionValidator可以判断格式,若Email,Phone等
oneway888 2005-07-22
  • 打赏
  • 举报
回复
document.all.txt.focus();

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧