首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使此AJAX请求工作

无法使此AJAX请求工作
EN

Stack Overflow用户
提问于 2012-07-06 21:41:48
回答 3查看 270关注 0票数 2

所以基本上这是我的脚本,它是用index.php编写的-

代码语言:javascript
复制
    <script type="text/javascript">
    setInterval(function() {
        jQuery.ajax({
            url: "ajaxChecker.php",
            context: document.body
        }).done(function(response) { 
            if(response == true) {
                location.reload(true);  
            }
        }); 
    }, 1000 * 60);      
    </script>

它应该每分钟向balanceChecker.php发送接收数据的请求,然后检查它是否是真正的重新加载页面,否则什么都不做。

这是ajaxChecker.php文件

代码语言:javascript
复制
<?php

return true;

?>

但它不起作用。有什么想法吗?

编辑了AJAX部分,现在也不能工作了-

代码语言:javascript
复制
    setInterval(function() {
        jQuery.ajax({
            url: "ajaxChecker.php",
            context: document.body,
            success: function(response) {
                if(response == "true") {
                    location.reload(true);  
                }
            }
        });
    }, 1000 * 10);  

并在ajaxChecker.php文件中替换了返回回显和true到"true“。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-06 21:43:32

你的php不会输出任何东西。

应该是:

代码语言:javascript
复制
<?php echo "true";?>

在js中:

代码语言:javascript
复制
if(response == "true") {

此外,我建议不要包含PHP结束标记:?>,以避免不必要的新行,并防止发送标题信息:

代码语言:javascript
复制
<?php 
     echo "true";
票数 3
EN

Stack Overflow用户

发布于 2012-07-06 21:43:25

在你的php文件中写

代码语言:javascript
复制
<?php

echo true;//can also use echo 1

?>

因为页面不能返回任何内容

票数 4
EN

Stack Overflow用户

发布于 2012-07-06 21:52:43

你可以用"success“代替.done:

代码语言:javascript
复制
var str="the data you want to send to ajaxChecker.php";

$.ajax({
          type: "POST",
          url: "ajaxChecker.php",
          data: str,
          success: function(msg) {
          // msg is the return you receive from ajaxChecker.php

                      if(msg==1) {location.reload();}

              }
        }); 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11363364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档