jQuery加载文本文件数据

jQuery to load text file data

本文关键字:数据 文件 文本 加载 jQuery      更新时间:2023-09-26

我正试图使用外部脚本文件中的$.get()函数从服务器上的文本文件加载数据。我的代码如下:

  /* 
   * Load sample date
   */
  var stringData;
  $.get("http://localhost/webpath/graphing/sample_data.txt", function(data){
      stringData = data;
      //alert("Data Loaded: " + stringData);
      });
  //Split values of string data
  var stringArray = stringData.split(",");
  alert("Data Loaded: " + stringData);

当我在$.get()函数中时,我可以看到stringData var得到了peopulated,并且对alert的调用确认它包含来自示例文本文件的数据。但是,当我在$.get()函数之外时,stringData var将不再显示。我对这个函数是如何工作的还不够了解,不知道它为什么没有像我预期的那样工作。我所希望它做的就是将文本数据加载到一个变量中,这样我就可以使用它了。任何帮助都将不胜感激。

get是异步的,这意味着它调用服务器并继续执行其余的代码。这就是为什么你有回调方法。无论您打算对返回数据执行什么操作,都可以在回调方法(放置警报的位置)中执行。

get、post都是异步的。您可以使用进行同步呼叫

  1. 在代码中的任何位置使用$.ajaxSetup({ async: false });。这将影响代码中的所有ajax调用,所以要小心。

  2. CCD_ 2与CCD_。

查看下面的代码和上面提到的API文档链接来解决您的问题。

  /* 
   * Load sample date
   */
  var stringData = $.ajax({
                    url: "http://localhost/webpath/graphing/sample_data.txt",
                    async: false
                 }).responseText;
  //Split values of string data
  var stringArray = stringData.split(",");
  alert("Data Loaded: " + stringData);

$.get函数是异步的。您需要在回调函数中对返回的数据执行任何操作。您可以将该函数移动到不内联的位置来清理代码。

    function parseData(data){
        //do something with the data
        alert("data is: " + data);
    }
    $.get("http://localhost/webpath/graphing/sample_data.txt",parseData);