提交后在2个浏览器中更新内容


update content in 2 browsers AFTER submit

如果我在2个浏览器中正常更新以下文本:

index.php发送

function getStatus() {
    $.post('update.php', function(data) {
        $('div.text_window').html(data);
    });
    setTimeout("getStatus()",1000);
}
getStatus();

update.php

echo 'some text';

但是,如果我取消了页面加载时对函数的自动调用,并将其指定为在单击按钮时发生(以下代码),它会在单击的浏览器中更新,但我如何使它在其他浏览器中也更新呢?

$('#send_btn').click(function() {
    getStatus();
});

您的问题似乎与jQuery的可用性有关,请将您的初始调用函数放在回调中

$(document).ready(function() {
    getStatus();
});

还要确保增加你的超时时间,它应该是5-10秒

如果您想要即时更新并希望高效地进行更新,则需要使用PubSub或WebSockets

因为必须执行da preventDefault操作,有两种方法可以做到这一点。

返回错误(更好的方式)

$('#send_btn').click(function() {
    getStatus();
    return false;
})

或者使用event.prventDefault()(bleah)

$('#send_btn').click(function(event) {
    event.preventDefault()
    getStatus();
})

阅读http://api.jquery.com/event.preventDefault/有关更多信息,