JQuery Ajax WebService 怎么实现每隔几秒钟更新数据

时间:2022-11-28 17:27:46
  问你们一个问题,我用JQuery Ajax WebService 做一个程序,这是一个示例,就是说我想让他每隔几秒钟去查询一下,如果是最新数据,就显示出来,如果不是就不让它显示,但是我手动改变WebService中HelloWorld()返回的值时,他并没有及时的显示,该怎么做,

这是我HelloWorld方法:


 [WebMethod]
        public string HelloWorld()
        {
           
            return "3";
        }
  

JS代码:
< script type="text/javascript">
        var sum = "第一次";
        function b() {
            alert(sum);
            $(document).ready(function() {
                $.ajax({
                    type: "POST", //访问WebService使用Post方式请求                
                    contentType: "application/json;charset=utf-8", //WebService 会返回Json类型
                    url: "AjaxWebService1.asmx/HelloWorld",
                    dataType: 'json',
                    beforeSend: function(x) { x.setRequestHeader("Content-Type", "application/json; charset=utf-8"); },
                    success: function(result) {

                        if (result.d != sum) {
                            $('#zhi').append(result.d)
                            sum = result.d;
                        }
                        else{
                               return;
                             }
                    }
                })
            });
        }
        function showTime() {
            b();
          }
        setInterval("showTime()", 500);
       
    </script>
</head>
<body onload="b()" >

    <form id="form1" runat="server">
     
        <div id="zs"><a href="WebForm1.aspx" id="zhi">高技术产业</a>
        </div>

    </form>
</body>
</html>

4 个解决方案

#1


没有及时显示什么?

#2


就是我在WebService中随便设置了一个返回值,(假如:返回值是个“你好!”)当我手动改变它的返回值时,页面中并没有显示出最新的数据,这是怎么回事,

#3


确保在 <body> 元素的onload事件中没有注册函数,否则可能不会触发$(document).ready()事件。
http://www.61dh.com/blog/2009/01/jquery-documentready.html 参考

#4


呵呵,谢谢你们帮忙,我的问题已经解决,
原因是:在WebService中,你不能手动的改变返回值,因为这样你需要把程序重新加载。所以导致返回值的不改变。

#1


没有及时显示什么?

#2


就是我在WebService中随便设置了一个返回值,(假如:返回值是个“你好!”)当我手动改变它的返回值时,页面中并没有显示出最新的数据,这是怎么回事,

#3


确保在 <body> 元素的onload事件中没有注册函数,否则可能不会触发$(document).ready()事件。
http://www.61dh.com/blog/2009/01/jquery-documentready.html 参考

#4


呵呵,谢谢你们帮忙,我的问题已经解决,
原因是:在WebService中,你不能手动的改变返回值,因为这样你需要把程序重新加载。所以导致返回值的不改变。