javascript - jQuery ajax,附加数据有效但数据对另一端(计算机/用户)可见吗?

标签 javascript php jquery html ajax

这整个项目和代码稍后将托管到 php、mysql 托管服务器。

代码:

$(document).ready(function(){
    console.log('hello');
    $('input[name="nm_submit_comment"]').on('click', function(e){
        e.preventDefault();

        var frm = $(this).closest("form");
        var frm_id = frm.attr("id");
        var frm_id_splitted = frm_id.split("_");
        var frm_id_splitted_2 = frm_id_splitted[2];

        var frm_serialized = frm.serialize();

        $.ajax({
            url: "save-comment.php",
            method: "POST",
            data: frm_serialized,
            success: function(data) {                    
                data = JSON.parse(data);                    
                $('div#id_div_comment_' + frm_id_splitted_2).append('<div class="cl_div_comment_content">' + data.nm_textarea_comment_content + '</div>');
                $('textarea.cl_textarea_comment_content').val("");                  
            }
        });
    });

});

jQuery ajax 工作正常。它将数据保存到数据库,然后将数据附加到 div。我的问题是:附加数据后,数据是否对另一端(计算机/用户)可用/可见?或者在附加数据后,我是否必须添加 set setInterval 函数以每 10 秒加载一次评论 div。因此,如果有人发表评论,则 10 秒后其他用户将可以看到该评论。它 加载所有评论 div 可能会有开销。

我们在 Facebook 状态更新中看到了相同的场景。当有人更新他的状态或评论时,其他所有 friend 都可以看到评论。我们在 stackoverflow 通知中看到了这样的例子。如果有人回答或评论,我们会立即收到通知。它是如何完成的?我怎样才能使数据对其他用户可见?

非常感谢对这种情况的解释。

最佳答案

通过使用 setInterval 函数,所有用户都必须每 10 秒重新加载评论部分,这是一种不好的做法,不是您服务器的最佳设置。然而,这是最简单的解决方案。

最好的解决方案是套接字,套接字会在一个用户发表评论时通知其他用户,反之亦然。抢劫 http://www.socket.io/ .您将必须创建一个应用程序,其中所有用户都可以收听指定的功能,如果一个用户发表评论,其他用户将收到通知。这是解决此问题的一种轻量级方法,因为评论只会在一个用户发表评论(向函数发送信号)时更新。

希望这对您有所帮助。干杯

关于javascript - jQuery ajax,附加数据有效但数据对另一端(计算机/用户)可见吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34553338/

相关文章:

javascript - 无法使用 jQuery 访问页面表单和 iframe 表单

javascript - 如何在reactjs中调用另一个组件

javascript - API Google Maps Javascript 地址到 LatLng

php - Laravel 5 - API 请求不存在对象的全局异常处理程序

php - 什么是 'YTowOnt9' ?

javascript - Django 中 JS 和 Python 之间的数据集成与 Ajax

jquery - 轮播/选取框在 Firefox 和 Chrome 中在另一个页面/选项卡上后疯狂滚动

Javascript:将具有匹配项的函数传递给替换(regex,func(arg))不起作用

php - 从服务器编码的 JSON 数据出现问题,无法绘制图表

javascript - 当我失去输入元素的焦点时如何检查鼠标所在的元素