2016-04-13 32 views
0

我正在寫一個簡單的Javascript表單驗證器,但是當我運行它時,它根本沒有做任何事情。簡單的Javascript沒有做任何事情,控制檯沒有錯誤

function submitFunction() 
{ 
    var x = document.forms["myForm"]["username"].value; 
    var y = document.forms["myForm"]["pwd"].value; 
    if(x == null || x == "" || y == null || y == "") 
    { 
    alert("Both fields cannot be empty"); 
    } 
    else 
    { 
    alert("Username" + x + " Password: " + y); 
    } 
} 

我是否缺少一些簡單的東西?

它被稱爲是這樣的:在這裏

<div id="register"> 
<form name='registration' id="registration" onSubmit="return  formValidation()"> 

Username: <input type="text" name="username"><br> 

Password: <input type="password" name="pwd"><br> 
<input type="submit" value="Submit"> 
</form> 
</div> 
+4

什麼叫功能? – Pointy

+0

不是問題,但請注意,您不需要測試空值,因爲.value屬性不會返回null。 – nnnnnn

+0

你在控制檯檢查錯誤嗎? – gavgrif

回答

2

兩個問題:你的onsubmit回調不調用正確的函數,你submitFunction沒有訪問權形式的ID。

這應該按預期工作:

HTML:

<div id="register"> 
<form name='registration' id="registration" onSubmit="return submitFunction()"> 

Username: <input type="text" name="username"><br> 

Password: <input type="password" name="pwd"><br> 
<input type="submit" value="Submit"> 
</form> 
</div> 

的Javascript:

function submitFunction(){ 

    var x = document.forms["registration"]["username"].value; 
    var y = document.forms["registration"]["pwd"].value; 
    if(x == null || x == "" || y == null || y == "") 
    { 
    alert("Both fields cannot be empty"); 
    return false; 
    } 
    else 
    { 
    alert("Username" + x + " Password: " + y); 
    } 
} 

http://codepen.io/shshaw/pen/yOKoaG?editors=1010