当前位置:  开发笔记 > 编程语言 > 正文

jQuery ajax,附加数据工作,但数据是否可见其他端(计算机/用户)?

如何解决《jQueryajax,附加数据工作,但数据是否可见其他端(计算机/用户)?》经验,为你挑选了1个好方法。

整个项目和代码将托管到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('
' + data.nm_textarea_comment_content + '
'); $('textarea.cl_textarea_comment_content').val(""); } }); }); });

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

我们看到Facebook状态更新的相同方案.当有人更新他的状态或评论时,其他所有朋友都可以看到评论.我们在stackoverflow通知中看到了这样的例子.如果有人回答或评论,我们会立即收到通知.怎么做?如何让其他用户看到数据?

对此场景的解释将受到高度赞赏.



1> Luuk Skeur..:

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

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

希望这可以帮助.干杯

推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有