2017-04-21 169 views
0

我有一个用jQuery AJAX请求提交的登录表单。我想用 “按钮” 能够提交form.but唯一的 “按钮” 具有功能无响应(数据)为什么jQuery/AJAX按钮不起作用

HTML:

<form action="" method="post" class="form-signin"> 
    <input type="text" placeholder="Username" id="user" class="form-control loginid"> 
    <input type="text" placeholder="Password" id="password" class="form-control loginpw"> 
    <input type="text" placeholder="Check" id="check" class="form-control ck_secure"> 
    <div class="captcha_block"> 
     <span id="captcha" class="captcha"></span> 
     <a href="#" class="change" onclick="captchaCode()"> <img src="img/change.svg" alt="" class="photo04"></a> 
    </div> 
    <!-- <a href="#" class="login" id="login">Sign In</a> --> 
    <!-- <input id="login" type="button" class="btn btn-lg btn-primary btn-block" value="Sign In"> --> 
    <button id="login" class="btn btn-lg btn-primary btn-block" name="login">Sign In</button> 

的javascript:

$("#login").click(function(){ 
     if($('#code').text() != $('#check').val()){ 
      alert('error'); 
      location.reload(); 
     } 
     else{ 
      $.post('./process.php', 
      { 
       type : 'login', 
       user : $('#user').val(), 
       Passwd: $('#password').val() 
      }, 
      function(data){ 
       alert(data); 
       window.location.href = '../'; 
      }); 
     } 
     }); 

process.php:

if($_POST['type'] == 'login'){ 
    $login_row = @mysql_fetch_assoc(@mysql_query("SELECT * FROM `person` WHERE `user` = '".$_POST['user']."' AND `password` = '".$_POST['Passwd']."'")); 
    if($login_row) 
    { 
    $_SESSION['user'] = $login_row['user_name']; 
    echo 'welcome'; 
    }else 
    { 
    echo 'Incorrect username/password. please login again'; 
    } 
} 
+1

如果您使用ajax而不需要表格 – Hacker

+1

@ W.rc您是否在控制台中发现任何错误? –

+1

你在'document.ready'里面放了'click'事件处理程序吗?如果那时也不行,你应该尝试事件代表团。 –

回答

0

添加属性type=button登录像下面按钮。

<button type="button" id="login" class="btn btn-lg btn-primary btn-block" name="login">Sign In</button>