jquery中限制部分字段不能输入的方法分享

发布时间:2019-09-19编辑:脚本学堂
本文介绍下,在页面中限制部分字段不允许输入的方法,用jquery实现。有需要的朋友,作个参考吧。

表单验证时,需要用户必须输入某个字段,否则禁止输入其它字段:即屏蔽其它字段的输入。
有了jquery,实现起来相当简单多了。

1,页面内容部分
假设页面有三个字段:用户名、密码、密码确认。
 

复制代码 代码示例:
<form>
<div>
<span class="label">User Name </span>
<input type="text" class="username" name="username"/>
<span class="error"> User name cannot be blank</span>
</div>
<div>
<span class="label">Password </span>
<input type="password" class="password" name="password" />
<span class="error"> Password cannot be blank</span>
</div>
<div>
<span class="label">Confirm Password </span>
<input type="password" class="confpass" name="confpass" />
<span class="error"> Password and Confirm Password don't match</span>
</div>
</form>

2,jquery代码部分
 

<script>
$(document).ready(function() {   
$('.error').hide();   
$('.username').blur(function(){   
data=$('.username').val();   
var len=data.length;   
if(len<1)   
{   
$('.username').next().show();   
$('.password').attr('disabled',true);   
$('.confpass').attr('disabled',true);   
}   
else  
{   
$('.username').next().hide();   
$('.password').removeAttr('disabled');   
$('.confpass').removeAttr('disabled');   
}   
});   
$('.password').blur(function(){   
data=$('.password').val();   
var len=data.length;   
if(len<1)   
{   
$('.password').next().show();   
$('.confpass').attr('disabled',true);   
}   
else  
{   
$('.password').next().hide();   
$('.confpass').removeAttr('disabled');   
}   
});   
$('.confpass').blur(function(){   
if($('.password').val() !=$('.confpass').val())   
{   
$('.confpass').next().show();   
}   
else  
{   
$('.confpass').next().hide();   
}   
});   
});  
Java代码  
$(document).ready(function() {  
$('.error').hide();  
$('.username').blur(function(){  
data=$('.username').val();  
var len=data.length;  
if(len<1)  
{  
$('.username').next().show();  
$('.password').attr('disabled',true);  
$('.confpass').attr('disabled',true);  
}  
else  
{  
$('.username').next().hide();  
$('.password').removeAttr('disabled');  
$('.confpass').removeAttr('disabled');  
}  
});  
$('.password').blur(function(){  
data=$('.password').val();  
var len=data.length;  
if(len<1)  
{  
$('.password').next().show();  
$('.confpass').attr('disabled',true);  
}  
else  
{  
$('.password').next().hide();  
$('.confpass').removeAttr('disabled');  
}  
});  
$('.confpass').blur(function(){  
if($('.password').val() !=$('.confpass').val())  
{  
$('.confpass').next().show();  
}  
else  
{  
$('.confpass').next().hide();  
}  
});  
});  
</script>

原理分析:
在每个文本框的onblur事件中进行判断,先看用户框中的是否输入和长度是否匹配,如果不符合要求的话,则$('.username').next().show(); 这句。
也就是显示下一个元素(即出错信息提示,即<span class="error"> User name cannot be blank</span> ) 。
且同时

复制代码 代码示例:
$('.password').attr('disabled',true);
$('.confpass').attr('disabled',true);
 

将其他字段的disabled属性设置为TRUE即可。