使用javascript进行客户端的验证,结果一直无法弹出alert对话框,求救~
<scripttype="text/javascript">functionvalidate(){varusername=document.getElementsByNa...
<script type="text/javascript">
function validate()
{
var username = document.getElementsByName("username")[0];
var password = document.getElementsByName("password")[0];
var rpassword = document.getElementsByName("rpassword")[0];
if(username.value.length < 1)
{
alert(usename);
return false;
}
else
return true;
}
</script>
</head>
<body>
<form action="" onsubmit="return validate();">
用户名:<input type="text" name="username" ><br><br/>
密码: <input type="password" name="password" ><br><br/>
确认密码: <input type="password" name="repassword"><br><br/>
<input type="submit" value="submit"/>
<input type="reset" value="reset"/><br>
</form>
</body>
</html> 展开
function validate()
{
var username = document.getElementsByName("username")[0];
var password = document.getElementsByName("password")[0];
var rpassword = document.getElementsByName("rpassword")[0];
if(username.value.length < 1)
{
alert(usename);
return false;
}
else
return true;
}
</script>
</head>
<body>
<form action="" onsubmit="return validate();">
用户名:<input type="text" name="username" ><br><br/>
密码: <input type="password" name="password" ><br><br/>
确认密码: <input type="password" name="repassword"><br><br/>
<input type="submit" value="submit"/>
<input type="reset" value="reset"/><br>
</form>
</body>
</html> 展开
10个回答
展开全部
你的问题比较典型:
1,你要明确一个测试环境。ie要指定版本。其他浏览器也是一样。
原因是:js在不同的浏览器中解析的效果会有不同。
2,var username = document.getElementsByName("username")[0];
这种方式获取对象不是所有浏览器都支持的。
3,if(username.value.length < 1)
{
alert(usename);
return false;
}
这里是想判断username是否为空吗?如果是,代码是不严谨的。
(1)没有排除username使用空格填写的情况。
(2)alert(usename);少了一个“r”
(3)如果要看输入值,应该是alert(username.value);
4,<form action="" onsubmit="return validate();">
onsubmit=“return validate();” 这中写法是不严谨的。
综上,首先你要检查代码总的错误,然后优化代码。
1,你要明确一个测试环境。ie要指定版本。其他浏览器也是一样。
原因是:js在不同的浏览器中解析的效果会有不同。
2,var username = document.getElementsByName("username")[0];
这种方式获取对象不是所有浏览器都支持的。
3,if(username.value.length < 1)
{
alert(usename);
return false;
}
这里是想判断username是否为空吗?如果是,代码是不严谨的。
(1)没有排除username使用空格填写的情况。
(2)alert(usename);少了一个“r”
(3)如果要看输入值,应该是alert(username.value);
4,<form action="" onsubmit="return validate();">
onsubmit=“return validate();” 这中写法是不严谨的。
综上,首先你要检查代码总的错误,然后优化代码。
展开全部
var username = document.getElementsByName("username")[0];
后面的赋值的是数组,前面接收的是单个的变量。
alert(usename);这里面的变量也写错了,
if(username.value.length < 1) 应该是 if(username.length< 1)
你可以打断点调试一下,调试之后你的问题就一目了然了!
后面的赋值的是数组,前面接收的是单个的变量。
alert(usename);这里面的变量也写错了,
if(username.value.length < 1) 应该是 if(username.length< 1)
你可以打断点调试一下,调试之后你的问题就一目了然了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
alert(usename);
这句话出现了问题,username是一个数组
你是不是要显示username中输入的值啊?修改成alert(usename.value);就好了
这句话出现了问题,username是一个数组
你是不是要显示username中输入的值啊?修改成alert(usename.value);就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
alert(usename);写错了。少个r
alert(username);
var rpassword = document.getElementsByName("rpassword")[0];写错了。少个e
var rpassword = document.getElementsByName("repassword")[0];
alert(username);
var rpassword = document.getElementsByName("rpassword")[0];写错了。少个e
var rpassword = document.getElementsByName("repassword")[0];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你写成if(username.value = ""){alert("不能为空");return false;}试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果username.value.length < 1这个条件不成立,肯定不弹窗啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询