2017-04-21 165 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>