2013-12-14 27 views
-1

這是一個使用javascript代碼的php。我想這:Javascript - 從html獲取文本到字符串

檢查每1秒chat_status.html -text的:狀態= 「離線」

全碼:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script> 
<script type="text/javascript"> 
// jQuery Document 
$(document).ready(function(){ 

function loadChatStatus(){ 
    var status = ("http://tulyita.hu/chat/chat_status.html".text); 
    if(status == "offline"){ 
    //this happens 1# 
    } else { 
    //this happens 2# 
    } 
} 

setInterval (loadChatStatus, 1); //Reload file every 1 seconds 


}); 
</script> 

但沒有奏效。 :(有人能幫助我嗎?

我需要從 「chat_status.html」 的文字。

function loadChatStatus(){ 
    $.ajax({ 
     url: "chat_status.html", 
     cache: false, 
     success: function(html){   
      $("#status").html(html); //Insert status into the #status div    
     }, 
    }); 
    if($("#status") == "offline"){ 
    //this happens #1 
    } else { 
    //this happens #2 
    } 
} 

??

+2

你究竟想要做什麼? ''「http://tulyita.hu/chat/chat_status.html」'是一個字符串,它永遠不會*等於''離線''。如果你想加載那個頁面,你應該看看AJAX。 – JCOC611

+0

調用此URL時,您正在檢查URL本身,而不是返回的內容。檢查jQuery文檔中的'ajax'函數。 –

+0

我需要「chat_status.html」中的文字。 – user3101195

回答

1

您可以使用$.get()從服務器加載內容,並在回調中使用它。示例(未測試):

$.get('http://tulyita.hu/chat/chat_status.html', function (data) { 
    if (data === 'chat = off' { 
    // happens when offline 
    } 
    else { 
    // happens when online 
    } 
}, 'text'); 

注意頁面的當前內容chat = off,而不是offline。在代碼中執行此操作後,請檢查data的確切內容。

另請注意,您的HTML頁面必須位於tulyita.hu上,或者您必須添加Access-Control-Allow-Origin標頭,因爲它的策略是相同的。

0

首先,不要申報。就緒的loadChatStatus功能()但是在它之外,在.ready()函數中只留下setInterval,而1秒是1000 ms,setInterval需要ms。

其次,使用.load()獲取url的內容,一個(隱藏的)div,然後檢查它是什麼,你不能只是做「string」.text,因爲字符串沒有.te xt成員。