1

我需要使用 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 不工作。请帮我解决它。

4

3 回答 3

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/

于 2013-03-16T09:55:28.573 回答
2

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

于 2013-03-16T09:55:08.073 回答
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>
于 2014-06-19T10:29:36.593 回答