jquery表单验证怎么判断输入的中文

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery表单验证怎么判断输入的中文相关的知识,希望对你有一定的参考价值。

正则表达式判断即可,如下:
第一种代码:
EXFCODE:
1 function isChinese(temp)
2
3 var re=/[^/u4e00-/u9fa5]/;
4 if (re.test(temp)) return false ;
5 return true ;
6

第二种代码:
EXFCODE:
01 function isChn(str)
02
03 var reg=/^[/u4E00-/u9FA5]+$/;
04 if (!reg.test(str))
05 alert( "不全是中文" );
06 return false ;
07 else
08 alert( "全是中文" );
09 return true ;
10

第三种代码:
EXFCODE:
01 function funcChina()
02
03 var obj = document.form1.txtName.value;
04 if (/.*[/u4e00-/u9fa5]+.*$/.test(obj))
05
06 alert( "不能含有汉字!" );
07 return false ;
08 else
09 return true ;
10 }
11

第四种代码:
EXFCODE:
1 function isChina(s)
2
3 var patrn=/[/u4E00-/u9FA5]|[/uFE30-/uFFA0]/gi;
4 if (!patrn.exec(s))
5 return false ;
6 else
7 return true ;
8
9
第五种代码:
EXFCODE:
1 var str= '玄峰软件hh' ;
2 if (escape(str).indexOf( "%u" )<0)
3
4 alert( "没有包含中文" );
5 else
6 alert( "包含中文" );
7
原理:escape对字符串进行编码时,字符值大于255的以"%u****"格式存储,而字符值大于255的恰好是非英文字符(一般是中文字符,非中文字符也可以当作中文字符考虑);indexOf用以判断在字符串中是否存在某子字符串,找不到返回"-1"。
参考技术A function isChn(str) 
  var reg = /^[u4E00-u9FA5]+$/; //中文正则
  if(!reg.test(str)) 
    return false; 
   
return true; 

这是使用 jquery 实现表单验证的正确代码吗? [复制]

【中文标题】这是使用 jquery 实现表单验证的正确代码吗? [复制]【英文标题】:Is this the right code to achieve form validation using jquery? [duplicate] 【发布时间】:2019-08-30 20:59:45 【问题描述】:

我正在尝试使用以下代码验证输入文本字段,但是当我输入任何字母时它会抛出 else 但我希望它允许任何字母但不以数字开头

     <div class="input-group">
        <label for="c_name">Cashier Name
        <input id="c_name" type="text" name="cashier_name"> 
        </label>
    </div>

$(document).ready(function()
    $( "#c_name" ).keyup(function() 

        var data= /^[A-Za-z]+$/;
    if ($("#c_name").val() == data) 
        $(this).addClass("cash");
        $(this).removeClass("cashs");
    else
     $(this).addClass("cashs");
     $(this).removeClass("cash");
    

);

); ```

I expect it to add a class cash if it begins with a letter.

【问题讨论】:

【参考方案1】:

data 是 RexExp。要检查字符串是否与正则表达式匹配,您应该使用 RegExp.prototype.test

if (data.test($("#c_name").val()))

$(document).ready(function()
    $( "#c_name" ).keyup(function() 
        var regex = /^[A-Za-z]+$/;
        if (regex.test($("#c_name").val())) 
            $(this).addClass("cash");
            $(this).removeClass("cashs");
         else 
            $(this).addClass("cashs");
            $(this).removeClass("cash");
        
    );
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="input-group">
        <label for="c_name">Cashier Name
        <input id="c_name" type="text" name="cashier_name"> 
        </label>
    </div>

【讨论】:

以上是关于jquery表单验证怎么判断输入的中文的主要内容,如果未能解决你的问题,请参考以下文章

jQuery formValidator表单验证 禁止输入汉字

validate jquery怎么判断一个表单是不是通过验证

validate jquery怎么判断一个表单是不是通过验证

jquery验证表单是不是为空

用jquery怎么验证名字在输入完之后马上提示有没有重复的代码

jquery的表单验证插件怎么验证身份证号