首页 > 解决方案 > 将文本文件读取到 jQuery 会返回“object Object”,而不是文本/字符串

问题描述

我只是想将一个单行.txt文件读入一个变量。我稍后想在网页中显示该变量。

我的文件夹结构:

NewsAlerts
    index.html
    assets
        searchterms.txt
        js
            newsalerts.js [THIS is the .js that runs the code below]
        css
            style.css

Mysearchterms.txt仅包括:

Chicago AND Illinois OR (Summer AND Winter)

所以我只是希望我的 javascript 变量能够保存该字符串。

代码:

var search_terms = $(".text").load("assets/searchterms.txt");

$("#terms_submission").on("click", function(){
    $("#terms_list").add("<span>" + search_terms);
    alert(search_terms.valueOf());
});

jQuery 似乎确实在加载一些东西,如果我添加alert(search_terms),我得到[object Object]. 但是这样做会search_terms.text()返回"",所以它可能正确地创建了一个 Object 变量……但其中没有任何内容。

标签: javascriptjquery

解决方案


它似乎与跨源请求有关。至少在本地解决这个问题的方法是从News Alerts文件夹启动本地服务器。

Windows 使用说明:

  1. 打开命令提示符并将目录更改为项目的顶级文件夹。
  2. python -m http.server使用[注意这是 Python 3]启动本地服务器
  3. 导航http://localhost:8000/
  4. 该脚本现在将运行。

FWIW 我使用的最终脚本是:

$.get(TXT, function(data){
    alert(data);
    $("new_search_terms").attr("placeholder", data);
});

推荐阅读