2016-04-13 33 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