2013-03-16 98 views
1

我需要验证一个表单使用JavaScript验证表单使用JavaScript

这里是我的形式:

<form name="login" action="#" method="POST" onSubmit="return validasi()"> 
<div class=log>My Id</div><div class=log><input type="text" name="username"></div> 
<div class=log>Password</div><div class=log><input type="password" name="sandi"></div> 
<div class=log><input id="tombol" type="submit" value="Login" ></div> 
</form> 

...和JS验证:

<script language="javascript"> 
function validasi(form){ 
    if (form.username.value == ""){ 
    alert("Anda belum mengisikan Username."); 
    form.username.focus(); 
    return (false); 
    } 

    if (form.sandi.value == ""){ 
    alert("Anda belum mengisikan Password."); 
    form.sandi.focus(); 
    return (false); 
    } 
    return (true); 
    } 
</script> 

然而, JS不工作。请帮我解决它。

回答

3

您应该将您的表单作为函数的参数。 你的提交代码应该是“return validasi(this)” 你的HTML代码应该是这样的。

<form name="login" action="#" method="POST" onSubmit="return validasi(this)"> 
<div class=log>My Id</div><div class=log><input type="text" name="username"></div> 
<div class=log>Password</div><div class=log><input type="password" name="sandi"></div> 
<div class=log><input id="tombol" type="submit" value="Login" ></div> 
</form> 

http://jsfiddle.net/xensoft/x8Vdw/

+0

HAHAH ... tq..it的工作 – newbie 2013-03-16 10:00:15

+0

很高兴它的工作。作为sasi建议用户返回true而不是返回(true)。 – kavin 2013-03-16 10:05:13

2

onSubmit="return validasi()"不会将任何参数传递给validasi(),但validasi()需要一个参数。

0
<form name="login" action="#" method="POST" onSubmit="return validasi();"> 
<div class=log>My Id</div><div class=log><input type="text" name="username"></div> 
<div class=log>Password</div><div class=log><input type="password" name="sandi"></div> 
<div class=log><input id="tombol" type="submit" value="Login" ></div> 
</form> 

    <script language="javascript"> 
    function validasi(form){ 

    var x = document.forms["login"]["username"].value; 
    var y = document.forms["login"]["sandi"].value; 

     if (x == null || x == ""){ 
     alert("Anda belum mengisikan Username."); 
     return false; 
     } 

     if (y == null || y == ""){ 
     alert("Anda belum mengisikan Password."); 
     return false; 
     } 
     } 
    </script>