未捕获的错误表达式:语法错误,无法识别的表达式

时间:2015-07-17 03:49:17

标签: javascript jquery

我只是想将一个文本文件放入一个变量fileDom中,以便在我的Web应用程序中。现在我没有解析任何东西,只是存储数据。

我的html是一个占位符供以后使用,但如下所示:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type ="text/css" href="css/reader.css">
    <title></title>
</head>
<body>

<script src="js/jquery-1.11.3.js"></script>
<script src="js/reader.js"></script>
</body>
</html>

我的脚本是:

var HTML_FILE_URL = 'http://localhost/feed.txt';

$(document).ready(function() {
    $.get(HTML_FILE_URL, function(data) {
        var fileDom = $(data);
            console.log($(this).text());
    });
});

我创建了一个运行的XAMPP,它包含txt文件和脚本文件,以避免开发的技术请求安全性测量。

无论如何,语法错误无法识别表达式,因此日志显示:

Uncaught Error: Syntax error, unrecognized expression

我的txt文件中的所有内容,没有引号,只是字符串本身的意图 并且行错误指向API和此行:

Sizzle.error = function( msg ) {
    throw new Error( "Syntax error, unrecognized expression: " + msg );
};

简单的解决方案我敢肯定,但我无法解决并存储文件中的行,直到我得到这个(可能是非常愚蠢的解决方案)。谢谢你的帮助!

2 个答案:

答案 0 :(得分:0)

如果您想将数据放入fileDom,而不是此...

var fileDom = $(data);

这样做:

var fileDom = data;

您无法将任意字符串传递给$$函数需要选择器或HTML片段。

答案 1 :(得分:0)

为了完成任务,你必须通过FileReader()方法读取文本的上下文,这与XMLHttpRequest相同,那么你需要使用readAsText()读取该数据作为文本.....然后通过调用event.target.result

存储结果的内容
var reader = new FileReader();
reader.onload = function(event) {
        var contents = event.target.result;
        console.log("File contents: " + contents);
};

      reader.onerror = function(event) {
            console.error("File could not be read! Code " +                                
             event.target.error.code);
       };

reader.readAsText(file);