用JS如何验证用户输入的用户名只能是汉字并且在2-4位之间
4个回答
展开全部
function checkname(val){
reg = /^[\u4E00-\u9FA5]{2,4}$/;
if(!reg.test(val)){
document.getElementById('t').innerHTML = '不符合标准!';
}else{
document.getElementById('t').innerHTML = '符合标准!';
}
}
用正则的方式验证输入框的内容是2-4位的汉字。
扩展资料:
^:匹配输入字符串的开始位置。
$:匹配输入字符串的结尾位置。
[\u4e00-\u9fa5]:匹配一个汉字的范围。
{n,m}:m和n均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。
[\u4E00-\u9FA5]{2,4}:表示2-4位汉字。
test():检测指定字符串是否存在返回一个布尔值。
!reg.test(val):表示val匹配上reg,表达式为false,否则为true。
展开全部
<body>
<input type="text" id="v" value="" />
<input type="button" value="验证" onclick="rr(document.getElementById('v').value)">
<span id="t" style="color:#ff0000"></span>
<script>
function rr(val){
reg = /^[\u4E00-\u9FA5]{2,4}$/;
if(!reg.test(val)){
document.getElementById('t').innerHTML = '不符合标准!';
}else{
document.getElementById('t').innerHTML = '符合标准!';
}
}
</script>
</body>
给你写好了,测试一下吧,望采纳!
追问
谢谢大哥的关注,你这个代码我拿来测试没有反应呀?我对这些不了解,还请指教!
追答
我都测了,好用啊!管理都推荐了,绝对好用
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
([\u4e00-\u9fa5]{2,4})
这是2-4个汉字的正则表达式,如果正则表达式不太会用在问我
这是2-4个汉字的正则表达式,如果正则表达式不太会用在问我
追问
谢谢大哥的帮助,我是个新手,对正则表达式不了解,更不知道怎么用了,还请多多指教!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var str=document.getElementById("username").value;
var reg = /^[\u4e00-\u9fa5]{2,4}$/i;
if (!reg.test(str))
{
alert("请输入2-4个汉字!");
}
追问
请问你这个函数怎么调用呀?是的表单中加 onBlur 事件还是在按钮上加单击事件?调用时需要传参数吗?新手上阵,多多指教!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询