2016-01-22 28 views
0

我想請知道是否有人知道如何去顯示哪些記錄正在jquery ajax請求中處理。例如: 我有一個來自index.html,jquery_ajax.js,session_dispaly.php和search.php的html輸入。Jquery Ajax請求顯示正在處理的記錄

和一個偵聽對於Enter按下 我也有一個發送POST請求並處理該請求的PHP頁面一個jQuery AJAX keyup事件......

現在我想要做的是.. 。而PHP頁面過程中,我想使用戶瞭解什麼是布萊恩的要求..說:

我的PHP的search.php是循環通過1-1000

雖然它的循環,我想告訴用戶通過session_display.php得知,

1正在處理

2正在處理

等等

謝謝。

index.html 
<html> 
    <head> 
     <title>Testing Message Display</title> 
     <link rel='stylesheet' href="depends/styles/bootstrap.min.css"> 
     <link rel='stylesheet' href="depends/styles/styles.css"> 
     <script src="depends/js/jquery.js"></script> 
     <script src="depends/js/bootstrap.min.js"></script> 
    </head> 
    <body> 
      <div class="form-action"> 
       <input class="form-control span6" id="search" type="text" placeholder="Please enter user name"> 
      </div> 
    </body> 
    <script src="depends/js/jquery_ajax.js"></script> 
</html> 

jquery_ajax.js 
    $('#search').on('keyup', function(e) { 
     if ( e.which === 13){ 
      $.ajax({ 
       url: "depends/php_request/search.php", 
       method:"POST", 
       data: {params:$('#search').val()}, 
       always: function(){ 
        $.ajax({ 
         url: "depends/display_session.php", 
         success:function(responseStatus){ 
          console.log(responseStatus) 
         } 
        }) 
       }, 
       success:function(successResponse){ 
        console.log(successResponse) 
       } 
      }) 
     } 
    }) 

display_session.php 
<?php 
@session_start(); 
echo $_SESSION['Names']; 
unset($_SESSION['Names']); 
?> 

而且

search.php 
<?php 
@session_start(); 
$name=array(); 
for($i = 1; $i <=100000; $i++){ 
    $_SESSION['Names'] = $i . 'is being processed'; 
    $name[] = $i;  
} 
echo json_encode($name); 
?> 
+1

你可以發佈你試過的代碼嗎? –

+0

請閱讀[如何提出好問題](// stackoverflow.com/help/how-to-ask)並嘗試編輯您的問題。有了高質量的問題,您將會收到更快的答案。謝謝! – SmokeDispenser

+0

Plz find desc above! –

回答

0

您可以使用的console.log()

 
`$.ajax({ 
    //params goes here 
    always: function(data) { 
     console.log(data); 
    } 
});` 

之前,你.keyup();輸入,打開你的開發工具在Chrome/Firefox的緊迫F12看從你的代碼返回的數據。
請記住指定yout dataType爲HTML以查看錯誤或json以查看數組。
或者你可以使用一個HTML元素就像一個div#test,把你的回報它,看結果

 
`$.ajax({ 
    //params goes here 
    always: function(data) { 
     $("div#test").html(data); 
    }` 
});` 

記得設置你的dataType正確
我認爲這是很好的解釋。

+0

對不起,我以前從我的移動設備上打字。 –

+0

感謝您對問題的回覆! –

0

您可以使用:

console.log(data); 

OR

alert(data); 

OR

$("div#test").html(data); 
0

如果我正確理解你的問題,你可以做到以下幾點:

$.ajax({ 
    // ajax params 
    beforeSend: function() { 
     alert('tell user that request is under process'); 
     // or you can open a modal box 
    }, 
    done: function() { 
     alert('tell user that request is done'); 
     // or you can close modal box 
    } 
}); 

你可以顯示一個進度條,有很多關於如何做的教程。只是谷歌它。