2013-09-01 254 views
0

我只在正確填寫文本字段時試圖提交表單。我收到一個錯誤,說它期待if語句結束,但是它是另一個jquery語句的開始。我如何在if語句中串入多個語句?if語句中的多個jquery語句

<input type="image" id="signinsubmit" src="images/signinBtn.jpg"> </br> <p id='signupbutton'> 
<a href='subscription.php'>Sign Up </a> </p> 
<script type="text/javascript"> 

function validateForm() { 

    // verify input 
    var phone = $("#signupphoneNumber").val().replace(/[^0-9]/g, ''); 

    if($("#signupUsername").val().length < 4 || $("#signupPassword").val().length < 8 || $("#signupownerName").val().length < 1 $("#signupEmail").val().indexOf("@") < 0 || $("#signupEmail").val().indexOf(".com") < 0 || phone.length < 10 ) 
    { 
return false; 
} 

</script> 

回答

2

你該位後失蹤操作(大概||):

$("#signupownerName").val().length < 1 

,如果你提供了一些換行這將是比較明顯的:

if($("#signupUsername").val().length < 4 || 
    $("#signupPassword").val().length < 8 || 
    $("#signupownerName").val().length < 1     // <-- here's the problem 
    $("#signupEmail").val().indexOf("@") < 0 || 
    $("#signupEmail").val().indexOf(".com") < 0 || 
    phone.length < 10 ) { 
    return false; 
} 

(作爲除此之外,請注意,電子郵件地址不是必須有.com其中 - .net.gov或者任何已經萌芽最近新頂級域名的?)

0
$("#signupownerName").val().length < 1 $("#signupEmail").val().indexOf("@") < 0 

缺少||這裏。密切注意下一次請;)

而且,你會好得多進取心的,只是這樣做:

<input type="text" name="name" required /> 
<input type="email" name="email" required /> 
<input type="text" name="phone" pattern="[0-9]+" /> 

等。 HTML5在這裏,使用它!

+0

不是html 5每個瀏覽器都沒有識別出來嗎? – user2354835

+0

呃......是的! –

+0

@Kolink - 所以你不知道誰的工作環境仍然停留在IE7-9? (據我所知,表單驗證屬性直到IE10才被支持,是嗎?) – nnnnnn