javascript - 这是什么错误 Uncaught SyntaxError : Unexpected token < when using eval in jquery?

标签 javascript jquery ajax syntax-error

我有一个简单的 ajax 调用:

function message(){
    $.ajax({
        type: "GET",
        url: "/file/timestamp="+ timestamp,
        async: true,
        cache: false,
        success: function(data){
            var json = eval('('+data+')');
            console.log(json);
        }
    });
}

我得到一个错误Uncaught SyntaxError: Unexpected token <在这一行:var json = eval('('+data+')');

有什么想法吗?

谢谢。

编辑: 错误的更多详细信息:

$.ajax.successajax.js:9
f.Callbacks.njquery.js:2
f.Callbacks.o.fireWithjquery.js:2
wjquery.js:4
f.support.ajax.f.ajaxTransport.send.d

如果有帮助,这里有一些 php

public function fileAction()
{
    $this->getHelper('viewRenderer')->setNoRender();

    $filename = '/test/text.txt';

    $front  = Zend_Controller_Front::getInstance();
    $data   = $front->getRequest()->getParams();

    $lastModif      = !empty($data['timestamp']) ? $data['timestamp'] : 0;
    $currentModif   = filemtime($filename);

    while($currentModif <= $lastModif){
        usleep(10000);
        clearstatcache();
        $currentModif = filemtime($filename);
    }

    $response = array();
    $response['msg'] = file_get_contents($filename);
    $response['timestamp'] = $currentModif;

    echo json_encode($response);
}

如果我运行此操作,我会得到 json:{"msg":"message","timestamp":1331599879}但由于某种原因,响应不是这个而是一些 html

最佳答案

这取决于 data 中的内容。您正在运行 eval,因此正在运行 data 中的任何内容。请在此处发布数据

关于javascript - 这是什么错误 Uncaught SyntaxError : Unexpected token < when using eval in jquery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9676792/

相关文章:

javascript - 如何处理 AMP 的 CORS

javascript - 在 HTML 页面上显示 SVG

jquery - 消除 HTML 元素之间的间隙

javascript - 在多个 ajax 事件完成时调用函数

jquery 预加载通过 load() 方法加载的页面

javascript - react native 如何动态识别哪个列表项处于事件状态?

Javascript检测悬停是在元素的底部还是顶部填充

javascript - 删除嵌套数组的每个最后一个元素并完成最后一个数组

javascript - 如何将 JS 对象制作成 jQuery 元素?

javascript - AJAX jquery 表单发布不工作