jQuery AJAX调用从txt文件中获取错误的值

gogo_rulez

我有一个问题使用jQuery AJAX从服务器上的txt文件读取。基本上,我有3个文件,所有文件都位于同一目录中的服务器上(以后将不再介绍)。一个HTML文件包含一个按钮,当您单击它时,它会启动AJAX请求,然后将字符串(默认字符串)发送到创建txt文件的PHP文件。我还有另一个HTML文件,它在1500毫秒内具有一个简单的setInterval,它得到的是txt文件的值,如果该值==='default string',它将进行另一个AJAX调用,将文本文件重写为空。问题是我总是在setInterval中获得“默认字符串”,并且只有在浏览器中打开txt文件时,HTML2文件中的ajax才会返回一个空字符串。这是正常行为还是我错过了一些东西

插入'默认字符串'的HTML文件https://jsfiddle.net/fc6n07uz/1/

$('button').on('click', function() {
    console.log('you clicked');

    $.ajax({
        url: 'write_to_file.php',
        type: 'POST',
        data: {insertValue: 'default string'},
    })
    .done(function() {
        console.log("success");
    })
    .fail(function() {
        console.log("error");
    })
    .always(function() {
        console.log("complete");
    });

});

读取的HTML文件,如果string为'default string'emptyp,则为txt文件https://jsfiddle.net/ewtjy66b/1/

setInterval(function(){

    $.ajax({
        url: 'textfile.txt',
        type: 'GET',
        dataType: 'text'
    })
    .done(function(data) {
        if(data === 'default string') {

            console.log("I got the default string");

            $.ajax({
                url: 'write_to_file.php',
                type: 'POST',
                data: {insertValue: ''},
            });

        }
    })
    .fail(function() {
        console.log("error");
    });


}, 1500);

将文本插入txt文件的PHP文件(请注意,txt文件不是由PHP创建的,我是在本地创建的)https://jsfiddle.net/c91jumuw/

<?php

$insertValue = $_POST['insertValue'];
$myfile = fopen("textfile.txt", "w+") or die("error!");
fwrite($myfile, $insertValue);
fclose($myfile);

?>

因此,为什么我总是从HTML2获取控制台日志(console.log(“我获得了默认字符串”);),即使我重置了txt文件的值也是如此。我知道我重置了它,因为我在浏览器中刷新了txt文档,但它是空的,那时我停止获取console.log。

Amrinder Singh |

将您的setinterval函数放在按钮单击函数中,

像这样:

     $(document).ready(function(){
                $('button').on('click', function() {
                    console.log('you clicked');

                    $.ajax({
                        url: 'write_to_file.php',
                        type: 'POST',
                        data: {insertValue: 'default string'},
                    })
                    .done(function() {
                        console.log("success");
                    })
                    .fail(function() {
                        console.log("error");
                    })
                    .always(function() {
                        console.log("complete");
                    });


                    setInterval(function(){
                        $.ajax({
                            url: 'textfile.txt',
                            type: 'GET',
                            dataType: 'text'
                        })
                        .done(function(data) {
                            if(data === 'default string') {

                                console.log("I got the default string");

                                $.ajax({
                                    url: 'write_to_file.php',
                                    type: 'POST',
                                    data: {insertValue: ''},
                                });

                            }
                        })
                        .fail(function() {
                            console.log("error");
                        });
                    }, 1500);


                });
            });

用上面的代码替换整个jquery代码,

我已经测试过了,并且工作正常,

希望这对您有帮助:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ajax调用后无法在jquery中获取更新的cookie值

来自分类Dev

从JQuery文件中调用值

来自分类Dev

jQuery中$ .post Ajax调用的“错误”或“失败”

来自分类Dev

使用AJAX从JQuery调用的文件中调用文件

来自分类Dev

jQuery ajax调用返回对象,如何获取对象值

来自分类Dev

jQuery ajax调用返回错误

来自分类Dev

从.txt文件中获取值,然后使用javascript / jQuery在当前页面中显示该值

来自分类Dev

ajax成功错误函数未在jquery中调用

来自分类Dev

如何获取在jQuery中调用<button>的文本值?

来自分类Dev

Codeigniter中的jQuery Ajax调用

来自分类Dev

Safari中未获取jQuery AJAX HTTP错误代码

来自分类Dev

如何在Symfony2中使用jquery / Ajax从PHP文件中获取数组字段值?

来自分类Dev

如何在Symfony2中使用jquery / Ajax从PHP文件中获取数组字段值?

来自分类Dev

使用ajax和jquery在codeigniter中获取相关的行值

来自分类Dev

在jquery函数中获取ajax返回值

来自分类Dev

无法从jQuery ajax调用获取json数据

来自分类Dev

JQuery Ajax 调用:如何获取 JsonArray?

来自分类Dev

jQuery AJAX调用导致错误状态403

来自分类Dev

jQuery Same Origin Ajax调用错误

来自分类Dev

Coldfusion Jquery Ajax调用-500错误

来自分类Dev

在jQuery中获取TD的值

来自分类Dev

在jQuery中获取隐藏值

来自分类Dev

在jQuery中获取模型值

来自分类Dev

在jQuery中获取TH值

来自分类Dev

如何获取jQuery Ajax执行错误功能

来自分类Dev

jQuery Ajax获取外部URL错误

来自分类Dev

使用JQuery / Ajax获取会话值

来自分类Dev

php + jquery + ajax 获取多个值

来自分类Dev

Ajax jQuery调用WebMethod中子文件夹404错误背后的ASPX代码

Related 相关文章

热门标签

归档