1. 程式人生 > >JavaScript判斷是否全為中文,是否含有中文

JavaScript判斷是否全為中文,是否含有中文

第一種程式碼(全為中文則返回"true",不全為中文則返回"false"):

<script language="javascript">
            function isChinese(temp)
            {
            var re=/[^\u4e00-\u9fa5]/;
            if(re.test(temp)) return false;
            return true;
            }

  </script>

 

第二種

<script language="javascript">
            function isChn(str){
            var reg=/^[\u4E00-\u9FA5]+$/;
            if(!reg.test(str)){
            alert("不全是中文");
            return false;
            }
            alert("全是中文");
            return true;
            }
            </script>

 

 

 

判斷是否包含中文的程式碼很少,這裡提供三種方法:

第一種
<script language="javascript">
            function funcChina(){
            var obj = document.form1.txtName.value;
            if(/.*[\u4e00-\u9fa5]+.*$/.test(obj))
            {
            alert("不能含有漢字!");
            return false;
            }
            return true;
            }
            </script>
            <form name="form1">
            <input type="text" name="txtName"><input type="button" name="butTxt" value="判斷是否是漢字" onclick="funcChina()">
            </form>

 

第二種方法(包含中文則返回"true",不包含中文則返回"false"):

<script language="javascript">
            function isChina(s){
            var patrn=/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/gi;
            if(!patrn.exec(s)){
            return false;
            }
            else{
            return true;
            }
            }
            
            </script>

 

 

第三種

<script language="javascript">
            var str='中國站長天空www.zzsky.cn';
            if(escape(str).indexOf("%u")<0){
            alert("沒有包含中文");
            }
            else{
            alert("包含中文");
            }
            </script>

 

 

原理:escape對字串進行編碼時,字元值大於255的以"%u****"格式儲存,而字元值大於255的恰好是非英文字元(一般是中文字元,非中文字元也可以當作中文字元考慮);indexOf用以判斷在字串中是否存在某子字串,找不到返回"-1"。

 

 

來源   alert(isChina("中國站長天空www.zzsky.cn"));

 

例子:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8">
<title>phonebookset</title>
<script language="javascript" type="text/javascript" src="styleswitcher.js">
</script>
<script language="javascript">
            function isChina(s){
               var patrn=/[\u4E00-\u9FA5]|[\uFE30-\uFFA0]/gi;
               if(!patrn.exec(s)){
                   return false;
               }
               else{
                  return true;
               }
    }
            </script>
<script langauge="javascript">

function upperCase()
{ 
 var va=form1.PHB_Name.value
 var l=form1.PHB_Name.value.length
   
 if(isChina(va)){
    if(l>15){
         alert("當您輸入帶有中文的使用者名稱時,請不要超過15個字,請您重新輸入!")
   form1.PHB_Name.value=""
   
  }
 }
 else{
    if(l>30){
       alert("全英文時,您輸入的不能超過30個字元,請您重新輸入!") 
     }
 }
}

</script>


</head>

<body>
<div class="content">
<div class="title"><font class="font1">電話設定</font></div>
<div align="left" class="greynavbar">
<ul id="navlist">
<li><a href="dspset.htm">DSP</a> </li>
<li><a href="callservice.htm" >呼叫服務</a> </li>
<li><a href="digitalmap.htm">收號規則</a></li>
<li><a href="phonebookset.htm" id="current">電話簿</a></li>
<li><a href="functionkeyset.htm">功能鍵</a></li>
 
</ul>

<form name="buildArray" method="post" action="">
<div id="label"><font class="font2">電話簿列表</font></div>


<div id="OptionDiv" align="center">
  <table width="100%" cellpadding="2" cellspacing="1" class="option" >
    <tr>
      <td class="option_td">序號</td>
      <td class="option_td">姓名</td>
      <td class="option_td">號碼</td>
      <td class="option_td">鈴聲型別</td>
    </tr>
    <!$%PHB_TabInit#$>
    <!$%PHB_Num_R#$>
    <!$%REPEAT(BEGIN,1,PHB_Num_R)#$>
    <tr>
      <td class="option_td">$%PHB_IndexShow#$</td>
      <td class="option_td">$%PHB_NameShow#$</td>
      <td class="option_td">$%PHB_NumberShow#$</td>
      <td class="option_td">$%PHB_RingTypeShow#$</td>
    </tr>
    <!$%PHB_TabIndexPlusPlus#$>
    <!$%REPEAT(END)#$>
  </table>
</div>

</form>


<form name="form1" method="post" action="" >
<div id="label"><font class="font2">新增聯絡人</font></div>
<div id="OptionDiv" align="center">
<table id="PHB_Table" cellpadding="1" cellspacing="1" class="option" width="100%">
     <tr>
      <td  class="option_td" width="30%">姓名</td>
      <td  class="option_td" width="50%"><input type="text"  class="textinput" name="PHB_Name" maxlength="30"size="5"  onchange="upperCase()">
</td>
      <td  class="option_td" width="20%" rowspan="3" style="text-align:center"><input type="submit" name="DefaultAdd" value=" 新增 " class="buttoninput"  ></td>


     </tr>
     
     <tr>
      <td  class="option_td">號碼</td>
      <td  class="option_td"><input type="text" class="textinput" name="PHB_Num" maxlength="30"></td>

     </tr>
     <tr>
      <td  class="option_td">鈴聲型別</td>
      <td  class="option_td"><select name="PHB_Ring_RW" class="Select">
     <option value="0" $%PHB_Ring_RW#$>預設</option>
     <option value="1" $%PHB_Ring_RW#$>型別1</option>
     <option value="2" $%PHB_Ring_RW#$>型別2</option>
     <option value="3" $%PHB_Ring_RW#$>型別3</option>
     <option value="4" $%PHB_Ring_RW#$>型別4</option>
     <option value="5" $%PHB_Ring_RW#$>型別5</option>
     <option value="6" $%PHB_Ring_RW#$>型別6</option>
     <option value="7" $%PHB_Ring_RW#$>型別7</option>
     <option value="8" $%PHB_Ring_RW#$>型別8</option>
     <option value="9" $%PHB_Ring_RW#$>型別9</option>
     <option value="101" $%PHB_Ring_RW#$>音樂1</option>
     <option value="102" $%PHB_Ring_RW#$>音樂2</option>
     <option value="103" $%PHB_Ring_RW#$>音樂3</option>
     <option value="104" $%PHB_Ring_RW#$>音樂4</option>
     <option value="105" $%PHB_Ring_RW#$>音樂5</option>
     
    </select></td>

     </tr>

    
    </table>
</div>

</form>

<form name="form4" method="post" action="">
<div id="label"><font class="font2">電話簿選項</font></div>
<div id="OptionDiv" align="center">
<table cellpadding="2" cellspacing="1" class="option" style="width:100%">
<tr>
<td class="option_td" width="40%"><!$%PHB_TabInit#$>
      <input type="hidden" name="PHB_Num_R" value="$%PHB_Num_R#$">
                  <select name="PHB_NameIndex" class="Select">
                    <!$%REPEAT(BEGIN,1,PHB_Num_R)#$ >
                    <option  value="$%PHB_CalleeName_RW#$" >$%PHB_CalleeName_RW#$</option>
     <!$%PHB_TabIndexPlusPlus#$>
                    <!$%REPEAT(END)#$>
                  </select></td>
<td class="option_td"><input type="submit" name="DefaultDelete" class="buttoninput" value="刪除">
                  <input type="submit" name="DefaultLoad" class="buttoninput" value="更改"></td>
</tr>
</table>
</div></form>

</div>


</div>
</body>
</html>