javascript - Ajax 文本文件不工作,但 php

标签 javascript php ajax

我有一个像这样的ajax设置:

var $ = function(id) {return document.getElementById(id);};

var ajax = {
    send: function(url, callback, method, data, async) {
        var x = new XMLHttpRequest();

        x.open(method, url, async);

        x.onreadystatechange = function() {
            if (x.readyState == 4) {
                callback(x.responseText, x.status);
            }
        };

        if (method == "POST") {
            x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        }

        x.send(data);
    },
    query: function(data) {
        var query = [];

        for (var key in data) {
            query.push(encodeURIComponent(key) + "=" + encodeURIComponent(data[key]));
        }

        return query.join("&");
    },
    get: function(url, data, callback, async) {
        ajax.send(url + "?" + ajax.query(data), callback, "GET", null, async);
    },
    post: function(url, data, callback, async) {
        ajax.send(url, callback, "POST", ajax.query(data), async);
    }
}

这是我调用来接收 txt 文件内容的函数:

function update(text) {
    var d = $("display");

    ajax.get("chat.txt", {}, function(t) {
        d.innerHTML = t;

        d.scrollTop = d.scrollHeight;
    }, true);
}

但这不起作用,并且总是显示一小时前在 txt 中的旧文本。

所以我找到了另一个解决方案:

function update(text) {
    var d = $("display");

    ajax.get("display.php", {}, function(t) {
        d.innerHTML = t;

        d.scrollTop = d.scrollHeight;
    }, true);
}

,调用PHP文件,代码为:

<?php
    echo file_get_contents("chat.txt");
?>

为什么我不能直接调用txt???

它以前在其他 php 项目中工作过。

我使用 WAMP 服务器 2。

最佳答案

考虑到您在本地主机上使用 WAMP,请右键单击/www/目录,然后依次单击“属性”和“安全”,为您的/www/目录授予完全权限。

关于javascript - Ajax 文本文件不工作,但 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27201142/

相关文章:

javascript - Bacon.js onValue() 链

php - 从 PHP exec() 函数运行 Hugo

即使在更新 DIV 后,Javascript 函数仍会继续执行

php - 在codeigniter中将json数据推送到数据库

php - 获取相关项目并将其输出为链接

javascript - 仅使用一个 jQuery Ajax 提交多个表单

jquery - Ajax 重新加载同一页面 onclick

javascript - 基于 ng :repeat 的运行总计

php - 使用 javascript 时,我如何为选定的选项创建 if 语句

javascript - 提交表单后防止重新加载页面。 (没有 Ajax )