我有一个简单的html登录表单,这是用javascript验证后才提交。当我尝试在未满足验证条件的情况下提交表单时,会照常收到验证警报。但是,当满足这些条件时,submit按钮将变得无响应。
下面是表单的html代码:
<form action="staff_login_process.php" class="myform" enctype="multipart/form-data" method="post" onsubmit="return validLog()">
<fieldset>
<div id="apply_width">
<div id="field_area">
<h2 class="white">Login</h2>
<label for="username">Username<span>*</span>
</label> <input type="text" name="email" value="" id="username" class="float_right" />
<label for="password">Password<span>*</span>
</label><input type="password" name="password" value="" id="password" class="float_right" />
<a class="red" href="">Forgot Password</a>
</div>
<input type="submit" value="Login" class="button" />
</div>
</fieldset>
</form>下面是负责验证的Javascript代码:
function validLog() {
var username = document.getElementById('username');
var password = document.getElementById('password');
if(notEmpty(username, "Please enter username")){
if(notEmpty(password, "Please enter password")){
}
}
return false;
}
function notEmpty(elem, helperMsg){
if(elem.value.length == 0){
alert(helperMsg);
elem.focus(); // set the focus to this input
return false;
}
return true;
}我不知道该怎么做才能让它工作,也找不到哪里出错了,所以任何建议都是很好的。
谢谢
发布于 2012-06-08 23:43:38
您的validLog()函数始终返回false
变化
if(notEmpty(username, "Please enter username")){
if(notEmpty(password, "Please enter password")) {
return false;
}
}
return true;发布于 2012-06-08 23:45:29
由于notEmpty函数返回自身为true或false,因此只需尝试
function validLog() {
var username = document.getElementById('username'),
password = document.getElementById('password');
return notEmpty(username, "Please enter username")
&& notEmpty(password, "Please enter password");
} 因此,如果两个值都不为空,则将提交表单
https://stackoverflow.com/questions/10951970
复制相似问题