2016-04-21 83 views
1

我使用網絡攝像頭拍了一個學習項目的照片,我目前的工作,並試圖顯示剛剛拍攝的圖像。刷新與PHP內容的DIV

當一張照片被拍攝並放置在一個文件夾中,並希望顯示拍攝的所有照片時,我需要刷新的是<div>的PHP代碼來顯示它們。

我已經創建了一個名爲testdata.php呼應是一個隨機數,看看如果我能得到這個工作的PHP文件的簡單股利。

我最初拉着腳本計算器上過類似的問題,但不能讓它的工作。

<script type="text/javascript"> 
      $(document).ready(function() { 
      $('#mydiv').delay(10000).load('testdata.php'); 
      }); 
     </script> 


<div id="mydiv"></div> 

問題是,它顯示了文件的內容,但它不刷新

這裏是testdata.php

<?php 
echo(rand(10,100)); 
?> 
+0

和它沒有顯示?你如何刷新div? –

+3

如果它顯示的內容,它工作正常,你只增加了一個延遲,沒有像重新超時重新加載文件。您需要在某個超時後執行一個函數,並在該函數中設置一個新的超時值,以便該過程不斷重複。不要使用間隔,因爲這可能會導致同時/重疊請求嚴重混亂。 – jeroen

回答

3

使用此代碼:

setInterval(function(){ 
    $('#mydiv').load('testdata.php'); 
}, 3000); 

這將執行功能,每3秒。

瞭解更多的setInterval here

+0

謝謝你這麼多;這個工作就像一個魅力,能否請你鏈接的引用,所以我可以閱讀更多關於它,因爲我想學習,我去 – thenashone

+1

@thenashone,很高興我能幫忙。我已經在我的回答中提到了一個參考。點擊鏈接,還有更多關於setInterval的內容。 – Refilon

2

你的代碼只運行加載頁面後一次。您需要定期執行它:

$(document).ready(function() { 
    setInterval(function() { 
     $('#mydiv').load('testdata.php'); 
    }, 10000); 
}); 

這將每10000毫秒執行一次加載函數。

2

您可以使用JavaScript的setInterval定期調用一個函數來從服務器加載內容。

所以,如果你想要執行的PHP腳本,例如每5秒,那麼你應該使用這樣的事情:

$(document).ready(function() { 
      setInterval(function(){ $('#mydiv').load('testdata.php') }, 5000); 
});