2012-04-08 110 views
1

我想實時更新一些項目而無需更改頁面。更新多個項目

我已經爲每5秒更新一次的其他項目使用類似的東西。

我試着做每個項目,但它使我的網站非常緩慢。

我被告知它可以用jQuery完成,但我不知道具體如何。

我想要做什麼:

使用PHP我會越來越從我的數據庫信息,這將要麼說「1」或「0」

這我需要更新將是這些:(如果他們是1)

<a id="first_icon" style="background: url(/images/first.gif); height:23px; width:23px; float:left; margin-right:3px;" href="first.php" title="First"></a> 
<a id="sec_icon" style="background: url(/images/first.gif); height:23px; width:23px; float:left; margin-right:3px;" href="sec.php" title="Second"></a> 
<a id="third_icon" style="background: url(/images/first.gif); height:23px; width:23px; float:left; margin-right:3px;" href="third.php" title="Third"></a> 
<a id="four_icon" style="background: url(/images/first.gif); height:23px; width:23px; float:left; margin-right:3px;" href="four.php" title="Fourth"></a> 

如果他們是「0」圖標「ID」將會像「first_icon_2」

我怎樣才能得到一個請求所有他們一次?

在先進的感謝,我試圖做了約一個月。

+0

如果你想一個月做到這一點,你必須向我們展示_ _ – gdoron 2012-04-08 22:27:26

+0

它「你嘗試過什麼?」沒有任何好處,因爲它不工作,不會工作。 – 2012-04-08 23:23:58

回答

1

你想使用的是一個ajax調用。 jQuery有一個.ajax()函數:http://api.jquery.com/jQuery.ajax/這是非常直截了當的。

本質上,你需要做的是建立一個PHP腳本,它可以完成你需要的任何處理。任何回傳到頁面的內容都將通過ajax呼叫返回。如果您想要處理多個項目,則應查看JSON

由於您似乎需要返回多個值(每個圖標爲1),因此您需要在PHP中創建一個數組。該陣列會是這個樣子:

$icons = array("first_icon => 1, "second_icon => 0, "third_icon" => 0, "fourth_icon => 1); 

然後可以使用json_encode到陣列編碼成,這將是對你的JavaScript端可讀的字符串:

$iconsJSON = json_encode($icons); 
echo $iconsJSON; 

如果您設置AJAX功能在您的主頁(帶有JavaScript的主頁)上,您可以參考icon任意鍵。

$.ajax({ 
dataType: 'JSON', 
type: 'POST', 
url: api_url+'client/'+client.id+'.json', 
data: { 
    variable1: 'value', 
    variable2: 'value', 
    variable3: 'value' 
}, 
success: function(data) { 
    // On success perform this function 
    var icons = data; 
}, 
error: function(data) { 
    // On failure perform this function 
} 
}); 

我會建議通過這個資源閱讀,如果你需要更多的指導:http://www.jquery4u.com/json/ajaxjquery-getjson-simple/