单击“提交”按钮时无法发送/错误

时间:2017-03-03 07:49:08

标签: javascript php jquery cordova

我正在使用手机差距为我们的移动应用开发一个登录页面。但每当我点击“提交”按钮时,都会显示错误“无法发布/”。为什么会这样?请参阅下面的代码。

的index.html

<body>
    <div class="main-info2">
        <h3>Sign In</h3>
            <div class="in-form">
                <form id="login_form" method="post"">
                    <input type="text" placeholder="Username" required=" " id="email" />
                    <input type="password" placeholder="Password" required=" " id="password" />
                    <div class="check-sub">
                        <input type="submit" value="Login" id="login">
                    </div>
                </form>
            </div>
        </div>
        <div class="copy-right">
            <p>Design by <a href="http://w3layouts.com">W3layouts</a></p>
        </div>
    </div>
    <!-- //main -->
</body>

login.js

$(document).ready(function(){
    do_login();
});

function do_login() {
    $("#login").click(function () {
        var email = $('#email').val();
        var password = $('#password').val();
        var dataString="email="+email+"&password="+password+"&login=";

        if($.trim(email).length>0 & $.trim(password).length>0){
            $.ajax({
                type: 'POST',
                url: "http://localhost:1234/cleverpro/login.php",
                dataType: 'json',
                data: dataString,
                crossDomain: true,
                cache: false,
                beforeSend: function(){ $("#login").html('Connecting...');},
                success: function(data){
                    if(data == "success"){
                        console.log("hay nako!");
                        alert("hala");
                    }else if(data == "failed"){
                        $("#login").html('Login');
                        console.log("hastang sayupa");
                        alert("halajud");
                    }   
                }
            });
        }else{
            return false;
            console.log("walay sulod uy");
        }
    });
}

的login.php

<?php
include "db.php";

if(isset($_POST['login'])){
    $email=mysql_real_escape_string(htmlspecialchars(trim($_POST['email'])));
    $password=mysql_real_escape_string(htmlspecialchars(trim($_POST['password'])));
    $login=mysql_num_rows(mysql_query("select * from `user` where `email`='$email' and `password`='$password'"));

    if($login!=0){
        echo "success";
    }else{
        echo "failed";
    }
}

?>

我不知道我在哪里出错了。请帮帮我。

1 个答案:

答案 0 :(得分:1)

首先,最好在点击时使用(&#39;提交&#39;,处理程序)。 (见Whats the difference between onclick and onsubmit?

当您点击&#34;登录&#34;时,您的javascript代码完成后会发生默认表单发送操作。这意味着表单POST恰好是&#39; action&#39;您的表单未在表单中设置且是&#39; /&#39;默认情况下。

你需要阻止默认行动,有点像这样想

$('#login_form').on('submit', function(e) {
    e.preventDefault();
    //Your code
});