每30秒更新一次,但仅限于数据更改

时间:2017-02-03 22:58:50

标签: jquery ajax

我想每隔30秒更新一个标识为> grep('\\\xee',TFC$X2) integer(0) 的{​​{1}},但前提是div脚本返回一个新值。

notication

2 个答案:

答案 0 :(得分:0)

您可以存储包含当前数据的变量,也可以检查#notification_buble2元素的html,如果不同则更新它。 例如:

var currentData = "";
function auto_load(){
  $.ajax({
    type: 'POST',
    url: 'notifications.php',
    success: function(data){
       if(currentData != data) {
           $('#notification').html(data);
           currentData = data;
       }
    }
  });
}
auto_load();
setInterval(auto_load,30000);

答案 1 :(得分:0)

您尝试使用JavaScript完成的任务可以完成。下面是您尝试实现的示例代码。

    <!DOCTYPE html>
       <html>
          <head>
             <script type="text/javascript" source="jquery-2.4.1.min.js">
                function showNewList(str) {
                   if (str=="") {
                  document.getElementById("idofselectedmenu").innerHTML="";
                   return;
                  } 
                   if (window.XMLHttpRequest) {
                    // code for IE7+, Firefox, Chrome, Opera, Safari
                  xmlhttp=new XMLHttpRequest();
               } else { // code for IE6, IE5
               xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
              xmlhttp.onreadystatechange=function() {
    if (this.readyState==4 && this.status==200) {
      document.getElementById("idofselectedmenu").innerHTML=this.responseText;
    }
  xmlhttp.open("GET","handler.php?variable="+str,true);
  xmlhttp.send();
}
</script>
</head>

在处理程序文件中使用上述内容时,您需要使用$ _GET [&#39;变量&#39;]才能从网页中检索数据。