JavaScript 表单 验证不能为空

表单定义(用户名部分):<formid="form1"name="form1"method="post"action="cgibin/abc.pl"onsubmit="r... 表单定义(用户名部分):
<form id="form1" name="form1" method="post" action="cgibin/abc.pl" onsubmit="return validate()">
<table width="500" border="1" align="center">
<tr>
<td align="right"><div align="right">username:</div></td>
<td align="left" bgcolor="#FFFFFF"><div align="left">
<label for="username"></label>
<input name="username" type="text" id="username" size="10" maxlength="10" />
<span style="color: #F00">*不能为空</span></div></td>
</tr>
<tr>
formcheck.js中相关方法定义:
function validate()
{var username=document.getElementByI("username").value
if (username.length==""){
alert("名字不能为空。")return false;
}
return true;
}

但是预览后用户名为空时,它并没有进行验证,并没有弹出提示窗口,不知道是哪里出错了。
展开
 我来答
完美乱我
2013-04-26
知道答主
回答量:5
采纳率:0%
帮助的人:7559
展开全部
if (username.length==""){
alert("名字不能为空。")return false;
}

username.length==""怎么能判断是否为空呢

可以这样写
表单定义(用户名部分):
<form id="form1" name="form1" method="post" action="cgibin/abc.pl" onsubmit="return validate()">
<table width="500" border="1" align="center">
<tr>
<td align="right"><div align="right">username:</div></td>
<td align="left" bgcolor="#FFFFFF"><div align="left">
<label for="username"></label>
<input name="username" type="text" id="username" size="10" maxlength="10" />
<span style="color: #F00">*不能为空</span></div></td>
</tr>
<tr>
formcheck.js中相关方法定义:
function validate() {
var username=document.getElementByI("username").value
username = username.replace(/[ ]/g,""); //替换所有空格!

if (username==""){
alert("名字不能为空。")return false;
}
return true;
}
追问
。。。我试过了。。还是不行ORZ。。。。子啊。救救我吧
追答
alert("名字不能为空。")return false;
少了分号,alert("名字不能为空。");return false;
13965053836
2013-04-26
知道答主
回答量:15
采纳率:0%
帮助的人:6.2万
展开全部
在input 里面加上 onblur="return validate()"

是你鼠标事件加错了,你加的是onsubmit,但是没有submit按钮
更多追问追答
追问
不是这个原因。。我后面有submit按钮

追答
我试了一下你的,可以实现,估计是一些小问题没注意:
①js没包含进来,路径错误
②函数内alert和return句要换行。。。仔细检查一下

username:

*不能为空

function validate() {
var username=document.getElementById("username").value;
username = username.replace(/[ ]/g,""); //替换所有空格!
if (username==""){
alert("名字不能为空。");
return false;
}
return true;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
专揭防伪商标
2013-04-26 · TA获得超过139个赞
知道小有建树答主
回答量:203
采纳率:0%
帮助的人:108万
展开全部
var username=document.getElementByI("username").value
var username=document.getElementById("username").value
这两句差一个字母'd'
追问
额。。这个是我贴上来的时候漏了。。源程序是写了‘d’的。。并不知道我的程序有没有其他问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
onedayof2012
2013-04-26
知道答主
回答量:7
采纳率:0%
帮助的人:1万
展开全部
html元素的内容不一定是value就能拿到的,试试textContent
提交回答
追问
似乎还是不行。。。会不会有其他问题呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shenwei5566
2013-04-26 · TA获得超过610个赞
知道小有建树答主
回答量:575
采纳率:33%
帮助的人:247万
展开全部
应该改成username == ""
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式