求指点js表单验证的一个小问题!
<html><head><title>NewDocument</title><styletype="text/css">input.invalid{background-...
<html>
<head>
<title> New Document </title>
<style type="text/css">
input.invalid{background-color:yellow;}
</style>
</head>
<script type="text/javascript">
window.onload=initForm;
function initForm(){
var allTags=document.getElementsByTagName('*');
for (var i=0;i<allTags.length ;i++ ){
if (allTags[i].className.indexOf('reqd')>-1){
allTags[i].onblur=fieldCheck;
}
}
}
function fieldCheck(){
if (this.value==''){
this.className+=' invalid';
this.focus();
}
else{
this.className='reqd';
}
}
</script>
<body><form><h3>
Email Address:<input type="text" class="reqd"><br>
Name(optional):<input type="text" ><br>
Address:<input type="text" >
.............
</h3>
</form>
</body>
</html>
如上代码所示只能验证第一栏的字段 如果多添加设置几个input并添加类为'reqd' 脚本就会卡
住了,请问怎么修改一下呢? 展开
<head>
<title> New Document </title>
<style type="text/css">
input.invalid{background-color:yellow;}
</style>
</head>
<script type="text/javascript">
window.onload=initForm;
function initForm(){
var allTags=document.getElementsByTagName('*');
for (var i=0;i<allTags.length ;i++ ){
if (allTags[i].className.indexOf('reqd')>-1){
allTags[i].onblur=fieldCheck;
}
}
}
function fieldCheck(){
if (this.value==''){
this.className+=' invalid';
this.focus();
}
else{
this.className='reqd';
}
}
</script>
<body><form><h3>
Email Address:<input type="text" class="reqd"><br>
Name(optional):<input type="text" ><br>
Address:<input type="text" >
.............
</h3>
</form>
</body>
</html>
如上代码所示只能验证第一栏的字段 如果多添加设置几个input并添加类为'reqd' 脚本就会卡
住了,请问怎么修改一下呢? 展开
3个回答
展开全部
天呐,你 var allTags=document.getElementsByTagName('*');
写星号呀???这不是遍历所有的么,能不卡么,你针对一下标签嘛,这么效率的问题,应该想得到呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var allTags=document.getElementsByTagName('*');
把*换成input
把*换成input
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询