2012-07-30 47 views
2

正如標題所說,我想每x次更新一次ajax提取e.x. 10秒後x時間後刷新ajax提取的內容

嘗試了幾件事情,但沒有真正奏效。所以這就是爲什麼我最終在這裏..

所以...我如何刷新後.x ..內容的內容?

content.php

<html> 
<head>  
$.ajax({          
     url: 'form/contact.php', data: "", dataType: 'json', success: function(rows)   
     { 
     for (var i in rows) 
     { 
      var row = rows[i];   

      var bedrijf = row[1]; 
      var naam = row[2]; 
      var functie = row[10]; 
      var id = row[0]; 
      $('.table').append("<tr><td>"+bedrijf+"</td> <td>"+naam+"</td> <td style='font-size: 12px;'>"+functie+"</td> <td><a href='index.php?p=contact-edit&amp;id="+id+"'><img src='images/page_e.png' height='21' width='19'></a></td>") 
     } 
     } 
    }); 


</head> 
.... 
</html> 

形式/ contact.php

$result = mysql_query("SELECT * FROM contact"); 


$data = array(); 
while ($row = mysql_fetch_row($result)) 
{ 
    $data[] = $row; 
} 
echo json_encode($data); 

感謝您的時間

+0

你看過JavaScript定時事件嗎?這裏有一個例子:http://www.w3schools.com/js/js_timing.asp – anAgent 2012-07-30 12:45:20

+1

你嘗試過'setInterval()'函數嗎? – Fluitketel 2012-07-30 12:45:25

回答

1

您需要一個時間間隔。

function doAjax() { 
    //existing AJAX code here 
} 
doAjax(); //do AJAX on load 
setInterval(doAjax, 10000); //...and every 10 seconds hence 
+0

這個問題是它刷新除ajax之外的所有東西......當我添加一個警報函數doAjax(){}它每10秒刷新一次,但ajax保持不變。 – Peacy 2012-07-30 12:58:54

+0

如果您將當前的AJAX代碼放入我的'doAjax()'函數中,該函數將每隔10秒重新發送一次AJAX請求。無論您的AJAX回調或AJAX響應是否是您需要的,都是另一個問題。然而,就如何重複一項行動而言,我提供的是實現這一點的簡單點。 – Utkanos 2012-07-30 13:05:12

+0

謝謝,問題是我沒有清除表格,但現在又出現了另一個問題,你看到內容刷新不可能以任何其他方式進行,這是非常難看的嗎? – Peacy 2012-07-30 13:07:46

0

你的問題是相當模糊,但要實現每10秒刷新上方代碼應該工作,如果你把它包裝在

setInterval(function() { 
    // Fetch and update 
}, 10000); 

確保在每次迭代時清空表格。

+0

我想你的意思是'setInterval' – Utkanos 2012-07-30 12:46:15

+0

哈我是的,我的錯誤;)更新。 – Martin 2012-07-30 12:49:03