我是新來的JavaScript和jQuery的,我從另一個網站通過PHP加載數據,但我想刷新它每分鐘不使用PHP,因爲他們返回的數據是這種格式1000,10000每次都有不同的數字。從另一個URL加載數據
那麼我怎麼能每分鐘加載數據並分割它,就像在我使用爆炸(「,」,「1000,10000」)。
我想分割數據以顯示%,所以在這個例子中1000/10000 * 100會給我們10%。
謝謝。
我是新來的JavaScript和jQuery的,我從另一個網站通過PHP加載數據,但我想刷新它每分鐘不使用PHP,因爲他們返回的數據是這種格式1000,10000每次都有不同的數字。從另一個URL加載數據
那麼我怎麼能每分鐘加載數據並分割它,就像在我使用爆炸(「,」,「1000,10000」)。
我想分割數據以顯示%,所以在這個例子中1000/10000 * 100會給我們10%。
謝謝。
你在找什麼是字符串split()函數。您可以使用它來獲取字符串並根據正則表達式進行拆分。然後,您可以將返回的子字符串轉換爲數字,以便對它們進行數學運算。請注意,您可能可以省略顯式轉換,但有時數字的處理方式與字符串不同(例如+
運算符將會追加字符串,即使它們都是數字),所以我認爲這是一種很好的做法。
var nums = data.split(/,/);
var pct = Number(nums[0])/Number(nums[1]) * 100;
要每分鐘獲取數據,您需要使用AJAX並調用生成數字的php方法。請注意,要麼url需要位於同一個域中,要麼需要使用JSONP進行傳輸。我假設(因爲你正在使用一個字符串),該值不是JSON,而是原始內容。如果您可以使用JSON,則不需要進行字符串拆分,因爲您可以將數字放入JSON對象的各個屬性中。
$(function() {
setInterval(function() {
$.ajax({
url: 'some.php',
dataType: 'html',
success: function(data) {
var nums = data.split(/,/);
$('#percentage').text((Number(nums[0])/Number(nums[1]) * 100) + '%');
}
});
},60000);
});
但是,你能告訴我如何每分鐘運行該功能 – Shishant 2009-07-25 13:41:04
如果我正確理解你的問題,你已經想出瞭如何將數據加載到你的頁面,現在你只是想解析它並利用它。
在這種情況下,你真的不需要任何jQuery,你可以使用javascript split
方法。
var dataFromOtherUrl = "1000, 10000";
var result = dataFromOtherUrl.split(", ") // result is the array: ["1000", "10000"]
從那裏,你可以使用該數組在做您%數學:
var percentage = result[0]/result[1] * 100;
如果要限制次數的字符串分割你可以通過另一種說法到了#方法。
nope我不知道如何每分鐘運行該功能 – Shishant 2009-07-25 13:38:47
要每分鐘運行一個函數,必須使用setInterval -Methode。
var activ = window.setInterval("update()", 1000*60);
function update() {
// your update code goes here
// Ajax-Request
// parsing
// updating the display
}
阻止它,使用:
window.clearInterval(activ);
能幫你什麼,你不能找出一點更清楚了嗎?好像你在問怎麼分割,並且在你的評論之後,你會問如何在一段時間內運行它。你有沒有關於從另一個url加載數據的部分,還是那部分需要?此外,你甚至有另一個你可以點擊的網址,將以可用的形式返回你需要的數據嗎? – 2009-07-25 13:47:56