繁体   English   中英

Internet Explorer不会更新文件

[英]Internet Explorer doesn't update file

我正在使用AJAX和PHP来读取文件并更新div的innerHTML。 它适用于Chrome和Firefox,但不适用于Internet Explorer。

我试着用:

但我觉得它没用,因为我没有刷新页面。


if(!$newMsg || $newMsg == "") { // only reading from the file
    // do nothing
} else {
    $fileData .= "$newMsg";

    fwrite($fileHandler, "$newMsg");
}

fclose($fileHandler);

echo $fileData;

有趣的是,当它进入“else”块时,它会显示文件的内容已更新。 但是当它进入“if”块时,它会显示旧内容。

问题不在于PHP,而是在浏览器中。 PHP仅在服务器端运行,因此浏览器根本不重要。 我怀疑你的一些JS代码存在问题。

问题出在您的JS代码中,它向PHP发送了一些值。 IE无法解释它。 发布你的JS代码,你也调试了你的代码。

使用DebugBar

http://www.debugbar.com/?langage=en

问题是IE正在缓存。 它显示了基于URL的文件内容。 例:

的script.php?MSG =&文件名= myfile.txt的

仅在更新时,msg始终为空。 所以我添加一个计数器作为参数:

的script.php?MSG =&文件名= myfile.txt的&计数器= 1

现在它正在IE中工作。

一个有趣的事情是:当您发送相同的消息时,IE会在第一次发送消息之前显示内容。 这就是我意识到这个问题的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM