2014-02-07 47 views
0

在下面的代碼中,我有一個文本框,其中當我輸入數字時,它應該提醒只有字母表是允許的。在那裏我得到正則表達式並將其泄露並存儲在一個數組中,檢查我在我的文本框中輸入的正則表達式。請幫助解決問題。正則表達式中的問題

<input type="text" id="check" onblur="validate()" /> 

<script type="text/javascript"> 
    function validate() { 

     var hiddenValue = new RegExp("[A-Z]~~[a-z]"); 
     // var val = document.getElementById("check").value; 
     var mySplitResult = new Array(); 
     mySplitResult = hiddenValue.split("~~"); 
     for (i = 0; i < mySplitResult.length; i++) { 
      document.write("<br /> Array[" + i + " ]= " + mySplitResult[i]); 

      if (mySplitResult.test(document.getElementById("check").value)) { 
       alert('check'); 
       return false; 
      } 
    } 


} 
</script> 
+0

不能使用'分裂()'上'RegExp',它的唯一的字符串。我不確定你在那裏做什麼。 – Barmar

+0

是的,你可以把它寫成mySplitResult = [new RegExp(「[A-Z]」),new RegExp(「[a-z]」)]; – clancer

+0

如何驗證它是否是字符串 – user3278874

回答

0

如果你想測試的輸入是所有的字母:

if (!document.getElementById("check").value.test(/^[a-z]+$/i)) { 
    alert ("Only letters are permitted"); 
    return false; 
} 
0

看到這個小提琴。將檢查只有字母在文本框中,否則警報。

http://jsfiddle.net/2EDYV/2/

function validate() { 
    var result = /^([a-zA-Z]+)$/.test(document.getElementById("check").value); 
    if (!result) { 
     alert('numeric value found'); 
    } 
}