2012-07-30 42 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