将保存在文本文件中的数组加载到javascript中

时间:2016-06-14 04:03:26

标签: javascript arrays ajax

我想加载一个文本文件,其中包含如下所示的数组,因此可以在javascript中访问它,如何通过ajax调用来访问文本文件?这是文本文件artists.txt

["Fally ipupa","Radio & Weasel","P-Square feat. Don Jazzy","Mose Fanfan","Fally ipupa","Mercy Masika","Madilu System","Koffi Olomidé","DaVido","Luciano","Kanda Bongo Man","Franco","Franco","DJ Afrobeat","Oliver Mtukudzi","Sauti Sol","Alikiba","Aryon","Gramps Morgan","Buju Banton","Wailing Souls","Bob Marley & The Wailers","Don Carlos and Gold","Burning Spear","Peter Tosh","George Nooks","Richie Spice","Culture","Sanchez","Terry Linen","Archie Wonder","Jah Cure","Busy Signal","Romain Virgo","Junior Reid","Shaggy","Glen Washington","Ginjah","Lucky Dube","Bushman","Chronixx","Turbulence","Protoje","UB40","Franco","Rich Mavoko","Rose Muhando","Kanda Bongo Man","Diamond"," Davido","Tekno","Daddy Owen","Pépé Kallé","Busy Signal","Franco Et Le T.P. O.K. Jazz","Alice Kamande","Koffi Olomidé","Culture","Alikiba","Papa Wemba","Korede Bello","Madilu System","Reuben Kigame","Gloria Muliro"]

2 个答案:

答案 0 :(得分:0)

直接使用GET请求通过ajax调用它。

/**************************************************************************************************
Ajax
*/
    // Set all of these parameters.
    // type
    // url
    // callback
    // data


    Pub.ajax = function (config_ajax) {
        var xhr = new win.XMLHttpRequest();

        // post_json
        if (config_ajax.type === 'post_json') {
            xhr.open("POST", config_ajax.url, true);
            xhr.setRequestHeader("Content-type", "application/json");
        }

        // post
        if (config_ajax.type === 'post') {
            xhr.open("POST", config_ajax.url, true);
            xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        }

        // get
        if (config_ajax.type === 'get') {
            xhr.open('GET', config_ajax.url, true);
        }

        // post for form_data
        if (config_ajax.type === 'multi') {
            xhr.open("POST", config_ajax.url, true);

        }
        xhr.onload = completed;
        xhr.send(config_ajax.data);

        function completed () {
            if (this.status === 200) {
                config_ajax.callback(xhr.responseText);
            } else {
                throw new Error("xhr.status is " + this.status);
            }
        }
        xhr.app_url = config_ajax.url;
        Priv.createStatusBar(xhr);

        return xhr;
    };

答案 1 :(得分:0)

为了使其通过Ajax调用,

  1. 将您的文件重命名为artists.json
  2. 在Web服务器中设置MIME类型,作为.Json扩展名的application / json。这已经在大多数网络服务器中设置了。
  3. 然后做一个Ajax调用,如果你像jquery一样使用库,那么它非常简单如下

    url = my site.com/artists.json;

    $.ajax({
      dataType: "json",
      url: url,
      data: data,
      success: success
    });
    
  4. 这应该会自动允许您在success方法中获取和读取JSON文件。