关于表单验证
问题1:
作表单验证时,当按钮不在表单里面时,一切正常!
而当按钮在表单里面时就不对,不能提交表单,为什么?
问题2:
<form ...>
<FIELDSET> <LEGEND><font color="#CC0033">请选择检索条件:</font></LEGEND>
....
</FIELDSET>
</form>
当用上述语句把表单框起来以后,无论按钮在不在表单里面均不对,不能提交表单,为什么?
上述两个问题怎么解决,尤其是当表单被框起来以后,怎样进行表表单验证?
谢谢各位高手!
问题点数:100、回复次数:15Top
1 楼qiyh1999(小雪)回复于 2002-06-05 10:51:29 得分 0
请大家帮忙,解决了给分!Top
2 楼gzj0815(wy)回复于 2002-06-05 10:59:30 得分 0
不会出现这种问题吧?
你把错误代码写出来!Top
3 楼qiyh1999(小雪)回复于 2002-06-05 11:03:12 得分 0
<form name="form1" action="siminext.asp" method="POST" >
<FIELDSET> <LEGEND><font color="#CC0033">请选择检索条件:</font></LEGEND>
<table border="0" width="442">
<tr>
<td height="27"><font size="4" face="Comic Sans MS"> The Number of C atom
</font></td>
<td height="27"><font size="3">
<input type="text" size="20"
name="CNum">
</font></td>
</tr>
<tr>
<td><font size="4" face="Comic Sans MS"> The Number of Peaks </font></td>
<td><font size="3">
<input type="text" size="20"
name="PeakNum">
</font></td>
</tr>
</table>
</FIELDSET>
</form>
<table width="399">
<tr>
<td width="43%"> </td>
<td width="57%">
<input type=button name="B1"
value="Next" onClick=check()>
</td>
</tr>
</table> <script Language=javascript>
function check()
{
var i;
var elems = form1.elements;
for(i=0;i<elems.length;i++) {
//document.write(form1.elements[i].value);
//alert(form1.elements[i].value);
if(isNaN(parseFloat(elems[i].value)))
{
alert("输入有误,请检查!");
return false;
}
}
this.form1.submit();
}
</script>
Top
4 楼gshope(北京.Net)回复于 2002-06-05 11:13:55 得分 20
this.form1.submit();
改成 document.form1.submit();Top
5 楼qiyh1999(小雪)回复于 2002-06-05 11:21:01 得分 0
改了以后也不行,怎么办呢?我觉得把表单框起来比较好看,但怎么又不能验证了呢?Top
6 楼gzj0815(wy)回复于 2002-06-05 11:25:09 得分 60
我有一个类似的,你看一下:
<%
uid=request.cookies("uid")
pwd=request.cookies("pwd")
if uid="" or pwd="" then response.redirect "login.htm"
%>
<%
mtxx=request.querystring("mtxx")
dj=request.querystring("dj")
zbsfy=request.querystring("zbsfy")
shfy=request.querystring("shfy")
fbsj=request.querystring("fbsj")
bz=request.querystring("bz")
if mtxx<>"" and dj<>"" and zbsfy<>"" and shfy<>"" and fbsj<>"" and bz<>"" then
dim conn
dim myrst
Set conn = Server.CreateObject("ADODB.Connection")
'使 用 Microsoft OLEDB Provider for ODBC Drivers + SQL Server (Ms SQL 的 ODBC Driver)两 层 接 口 :
conn.Open "Data PROVIDER=MSDASQL.1;Driver=SQL Server;Server=192.168.0.121;UID=wy;PWD=yan;Database=ggxt"
Set myrst = Server.CreateObject("ADODB.Recordset")
myrst.open"select * from 其他广告标准",conn,3,3
myrst.addnew
myrst("媒体形式")=mtxx
myrst("单价")=dj
myrst("总报审费用")=zbsfy
myrst("审核费用")=shfy
myrst("计划发布时间")=fbsj
myrst("备注")=bz
myrst.update
conn.close
set conn=nothing
end if
%>
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>欢迎进入广告审核管理系统!</title>
<SCRIPT language=javascript>
<!--
function check()
{bz=2;
var notnull
notnull=true
if(form1.mtxx.value=="")
{
window.alert("请输入媒体形式!");
form1.mtxx.focus();
bz=1;
notnull=false;
}
if(form1.dj.value=="")
{
window.alert("请输入单价!");
form1.dj.focus();
bz=1;
notnull=false;
}
if(form1.zbsfy.value=="")
{
window.alert("请输入总报审费用!");
form1.zbsfy.focus();
bz=1;
notnull=false;
}
if(form1.shfy.value=="")
{
window.alert("请输入审核费用!");
form1.shfy.focus();
bz=1;
notnull=false;
}
if(form1.fbsj.value=="")
{
window.alert("请输入发布时间!");
form1.fbsj.focus();
bz=1;
notnull=false;
}
if(form1.bz.value=="")
{
window.alert("请输入备注!");
form1.bz.focus();
bz=1;
notnull=false;
}
if (bz==2)
return bz;
else
return notnull;
}
function tj()
{bz=check()
if(bz==2)
{document.form1.action="qtbz.asp";
document.form1.method="get"
document.form1.submit();}
}
function cx()
{
document.form1.action="qtbzcx.asp";
document.form1.submit();
}
//-->
</SCRIPT>
<meta name="Microsoft Theme" content="citrus 011, default">
</head>
<body>
<form name="form1" action="qtbz.asp" method="" onsubmit="return check()">
<table border="1" width="493" height="217" bgColor="#e8f4ff">
<tr>
<td width="483" height="36" bordercolor="#99ccff" bgcolor="#99ccff" colspan="2"><p align="center"><b>其他</b><b>广告标准信息</b>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>媒体形式</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="mtxx" size="20"></td>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>单价</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="dj" size="20"></td>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>总报审费用</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="zbsfy" size="20"></td>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>审核费用</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="shfy" size="20"></td>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>计划发布时间</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="fbsj" size="20"></td>
</tr>
<tr>
<td width="276" height="18" align="center" bordercolor="#99ccff"><font size="2"><b>备注</b></font></td>
<td width="201" height="18" align="center" bordercolor="#99ccff"><input type="text" name="bz" size="20"></td>
</tr>
<tr>
<td width="483" colspan="2" height="37" bordercolor="#99ccff" bgcolor="#99ccff"><p align="center">
<input type="submit" value="提交" name="m" onclick="tj()">
<input type="reset" value="查询" name="m" onclick="cx()"></p>
</td>
</tr>
</table>
</form>
</body>
</html>Top
7 楼qiyh1999(小雪)回复于 2002-06-05 14:01:53 得分 0
请大家多帮帮忙,谢谢!Top
8 楼cmsoft(韦小宝是我的老乡)(草根在路上)回复于 2002-06-05 14:08:37 得分 20
<input type=button name="B1" value="Next" onclick="return check();">
这样写就行了Top
9 楼qiyh1999(小雪)回复于 2002-06-05 14:29:11 得分 0
还是不行!??Top
10 楼qiyh1999(小雪)回复于 2002-06-05 14:33:54 得分 0
还是不行!??Top
11 楼cmsoft(韦小宝是我的老乡)(草根在路上)回复于 2002-06-05 14:40:24 得分 0
提示什么错误?Top
12 楼qiyh1999(小雪)回复于 2002-06-05 14:59:55 得分 0
只是验证过不去,就是输对了也过不去,当然也就不能激发ASP程序。Top
13 楼qiyh1999(小雪)回复于 2002-06-05 15:55:18 得分 0
是不是就不能用框把表单框起来,这样实在太可惜了!Top
14 楼qiyh1999(小雪)回复于 2002-06-07 08:59:33 得分 0
是不是就不能解决???Top
15 楼zheng_hz(鸿鹄)回复于 2002-06-07 12:52:18 得分 0
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>
<body>
<script Language="JavaScript" Type="text/javascript">
<!--
function FrontPage_Form1_Validator(theForm)
{
if (theForm.T1.value=="")
{
alert("请输入字符!");
theForm.T1.focus();
return (false);
}
return (true);
}
//--></script><form method="POST" name="FrontPage_Form1" action="1.asp" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript">
<p>
<input type="text" name="T1" size="20"><input type="submit" value="提交" name="B1"><input type="reset" value="重置" name="B2"></p>
</form>
</body>
</html>
Top
16 楼qiyh1999(小雪)回复于 2002-06-11 09:11:39 得分 0
虽然我还是没有成功,但还是感谢大家的热心帮助!Top




