提交按钮不提交

时间:2012-06-08 15:41:44

标签: javascript validation button

我有一个简单的html登录表单,在提交之前用javascript验证。当我尝试提交验证条件未满的表单时,我会按常规获得验证警报。但是,当满足它们时,提交按钮变得无法响应。

以下是表单的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;
}

我不知道该怎样才能让这个工作起作用,而且无法找到我在这里出错的地方所以任何建议都会很棒。

由于

2 个答案:

答案 0 :(得分:2)

您的validLog()函数始终返回false

更改

if(notEmpty(username, "Please enter username")){
    if(notEmpty(password, "Please enter password")) {
        return false;
    }
}

return true;

答案 1 :(得分:1)

由于notEmpty函数返回自己truefalse,请尝试简单地

function validLog() {

   var username = document.getElementById('username'),
       password = document.getElementById('password');

   return notEmpty(username, "Please enter username") 
       && notEmpty(password, "Please enter password");
} 

因此,如果您的值都不为空,则会提交表单