2016-11-26 48 views
0

已經花在這個非常基本的正則表達式 2天。我想它來驗證準確的4只characters.And上&小寫Letters.No數字或特殊symbols.But它是無效的一切,包括輸入正確的。 無法解決問題。 請help.Code如下:---正則表達式正確無效用戶unput

感謝

PKJ

<!DOCTYPE html> 

<HTML><HEAD> 
<TITLE> 
RegEx Test 
</TITLE> 
</HEAD> 
<BODY> 
    <P> 
     <FORM action="cgi-bin/page2.py" 
      Type something:<input Id="usrInput" TYPE="text" VALUE="" onblur="chkInput()"> 
        <input Id="ts" TYPE="number" NAME="ts" value=0> 
        <input id="submit" type="submit" value="Go" > 
     </FORM> 
    </P> 
    <script> 
     function chkInput(){ 
     var myRgx=new RegExp(/^[a-zA-Z]{4}$/); 
     var input=document.getElementById("usrInput").innerHTML; 
      var rslt=myRgx.test(input); 
      alert(rslt) 
     } 

    </script> 
</BODY> 

+0

似乎工作。但是,您需要確保輸入完全是四個字符。因爲你的正則表達式不匹配,否則 – starcorn

+0

需要使用input元素的'value'屬性而不是innerHTML來獲取輸入框中的值。請看回答中的工作片段 –

回答

1

要選擇輸入文本類型的值使用.value而不是innerHtml

工作摘錄:

function chkInput() { 
 
    var myRgx = new RegExp(/^[a-zA-Z]{4}$/); 
 
    var input = document.getElementById("usrInput").value; 
 
    var rslt = myRgx.test(input); 
 
    console.log(rslt) 
 
}
<FORM action="cgi-bin/page2.py"> 
 
    Type something: 
 
    <input Id="usrInput" TYPE="text" VALUE="" onblur="chkInput()"> 
 
    <input Id="ts" TYPE="number" NAME="ts" value=0> 
 
    <input id="submit" type="submit" value="Go"> 
 
</FORM>

+0

嗨,AJ,非常感謝。它工作正常。你讓我的男人一天! – Jayk

+0

「要選擇輸入類型文本的值使用.value而不是innerHtml」,這是子彈。解決方案: – Jayk

+0

@Jayk:很高興聽到您的問題得到解決。 :) –

相關問題