2015-04-18 81 views
1

我有這個簡單的登錄與阿賈克斯的一個問題是,當我點擊登錄頁面刷新的時候它不應該-_-笨:AJAX發佈數據問題

我的形式

<div class="user_login"> 
      <form action="<?php echo base_url('welcome/login');?>" method="post" id="login-usr-frm"> 
       <label>Email/Username</label> 
       <input type="text" name="user"/> 
       <br /> 

       <label>Password</label> 
       <input type="password" name="password" /> 
       <br /> 

       <div class="checkbox"> 
        <input id="remember" type="checkbox" /> 
        <label for="remember">Remember me on this computer</label> 
       </div> 

       <div class="action_btns"> 
        <div class="one_half"><a href="#" class="btn back_btn"><i class="fa fa-angle-double-left"></i> Back</a></div> 
        <div class="one_half last"><input type="submit" id="lgn-btn-red" class="btn btn_red" value="Login"></div> 
       </div> 
      </form> 

      <a href="#" class="forgot_password">Forgot password?</a> 
     </div> 

我的jQuery代碼

<script type="text/javascript"> 
    $(function(){ 
     $("#login-usr-frm").submit(function(event) { 
      event.preventDefault(); 
      var url = $(this).attr('action'); 
      var postData = $(this).serialize(); 

      $.post(url, postData, function (o)) 

     }, 'json'); 

     }); 

    }); 
</script> 

我無法找到ISSU e,請幫忙! :)

+1

檢查從給定的鏈接。它包含類似的問題[Ajax表單提交](http://stackoverflow.com/questions/14235596/ajax-submitting-a-form-without-refreshing-the-page) –

+0

請使用螢火蟲....並檢查那裏是任何jquery錯誤來...將加載頁面...如果未來然後解決這個問題或把錯誤jquery到頁面的底部.... – parth

回答

3

第一件事情,你需要使用$.ajax({ //ajax code });

,然後把消息開始在阿賈克斯如果狀態顯示成功和錯誤消息

試試下面這段代碼:

$(document).ready(function(){ 
     $("#login-usr-frm").submit(function (e){ 
      e.preventDefault(); 
      var url = $(this).attr('action'); 
      var method = $(this).attr('method'); 
      var data = $(this).serialize(); 

      $.ajax({ 
       url:url, 
       type:method, 
       data:data 
      }).done(function(data){ 
       if(data !=='') 
       { 
        $("#response").show('fast'); 
        $("#response").effect("shake"); 
        $('#frm_login')[0].reset(); 
       } 
       else 
       { 
       window.location.href='<?php echo base_url() ?>welcome/login'; 
       throw new Error('go'); 
       } 
      }); 
     }); 

    }); 
+0

你需要啓動ajax使用$ .ajax({//ajax code}); –

+0

然後我把消息放在if條件下顯示成功和錯誤信息 –

+1

正確如果(data!=='')這行在你的代碼中應該是數據!=「」 – Saty