Javascript-将文本从html转换为字符串


Javascript - Get text from html to string

它是一个php,同时带有javascript代码。我想要这个:

每隔1秒检查chat_stats.html-text的:status="offline"

完整代码:

<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
    }
}

您可以使用$.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标头。

首先,不要在.ready()中声明loadChatStatus函数,而是在它之外。只在.ready()函数内保留setInterval。1秒为1000毫秒。setInterval预期为毫秒

其次,使用.load()获取url的内容,将其放在(隐藏的)div中,然后检查它是什么。不能只做"string".text,因为字符串没有.text成员。