jQuery表单登录检查不带重定向,密码和登录返回空白



我有一个登录表单,在我将其提交给PHP文档后,它运行良好,没有任何问题。但我不希望它重定向到 PHP 文档,所以我正在尝试这样做:

<form id="login" name="login" class="col-1 login" action="blocks/loggedIn.php" method="post">
    <input type="text" name="loginEmail" id="loginEmail" placeholder="email :" class="inputLogin"><br>
    <input type="password" name="loginPassword" id="loginPassword" placeholder="Password :" class="inputLogin"><br>
    <input type="submit" id="loginSubmit" class="button" value="OK"><br>
</form>
<script type="text/javascript">
    $(document).ready(function(){
        var lE = document.forms["login"]["loginEmail"].value;
        var lP = document.forms["login"]["loginPassword"].value;
        $('#loginSubmit').click(function(){
            if(lE == null || lE == "" || lP == null || lP == ""){
                alert('Login and password requiret!');
            }else{
                $.post(
                    $('#login').attr('action'),
                    $('#login : input').serializeArray(),
                    function(data){
                        alert(data);
                    }
                );
            };
            $('#login').submit(function(){
                return false;
            });
        });
    }); 
</script>`       

由于某种原因,变量lElP提交表单后返回空白。我也尝试使用这个来定义它们:

var lE = $('#loginEmail').val(); var lP = $('#loginPassword').val();但仍然没有... 任何想法这可能是什么?

您在页面加载时执行此操作:

var lE = document.forms["login"]["loginEmail"].value;
var lP = document.forms["login"]["loginPassword"].value;

除非用户真的快(如,比计算机快),否则不会在那里键入任何值。 因此,这些变量将为空(或将包含这些字段中可能具有的任何默认值)。

而是在提交表单时获取值:

$('#loginSubmit').click(function(){
    var lE = document.forms["login"]["loginEmail"].value;
    var lP = document.forms["login"]["loginPassword"].value;
    //...

最新更新