2017-03-05 39 views
0

https://jsfiddle.net/gzLeLjmb/的jsfiddle基本形式驗證用正則表達式不工作

出於某種原因的jsfiddle拋出一個錯誤,我不能工作了,爲什麼?我只是想用一個正則表達式來驗證輸入人名的輸入。

$("document").ready(function() { 
    function validateForm() { 
    var userName = $("input[name=userName]").val(); 
    var subject = $("input[name=subject]").val(); 
    var message = $("input[name=message]").val(); 

    if (/^[a-zA-Z ]{2,30}$/.test(userName)) { 
     alert("Your name is in the correct format"); 
    } else { 
     alert("Your name can't contain numbers or other characters etc."); 
    } 
    } 
}) 
+1

'ready'參數的大括號缺失。 – Teemu

+0

你應該更清楚地指出錯誤,因爲它可能是@teemu聲明的,你錯過了a)它清楚地在控制檯中聲明的那個錯誤。或者它可能是你有jsfiddle運行javascript onLoad而不是正文。它也可能是完全不同的東西,請提供有關您的錯誤的更多信息 –

回答

1

一切看起來沒什麼問題,但你應該使用回報虛假防止形式從提交FORMDATA。

還建議將html邏輯從html中分離出來。

$("document").ready(function(){ 
    $('form').on('submit', function() { 
     var userName = $("input[name=userName]").val(); 
     var subject = $("input[name=subject]").val(); 
     var message = $("input[name=message]").val(); 
     if (/^[a-zA-Z ]{2,30}$/.test(userName)) { 
      alert("Your name is in the correct format"); 
     } 
     else{ 
      alert("Your name can't contain numbers or other characters etc."); 
      return false; 
     } 
    }); 
});