最简单的方法来从Excel电子表格读取数据与JavaScript?

我有一个Excel电子表格中的机场代码,名称和位置列表,如下所示:

+-------+----------------------------------------+-------------------+ | Code | Airport Name | Location | +-------+----------------------------------------+-------------------+ | AUA | Queen Beatrix International Airport | Oranjestad, Aruba| +-------+----------------------------------------+-------------------+ 

我的Javascript是传递一个3个字符的string,应该是一个航空公司代码。 当发生这种情况时,我需要在电子表格中find代码并返回机场名称和位置。

我想像这样的东西:

 var code = "AUA"; console.log(getAirportInfo(code)); function getAirportInfo(code) { // get information from spreadsheet //format info (no help needed there) return airportInfo; } 

日志会写在哪里:

Oranjestad, Aruba (AUA): Queen Beatrix International Airport

从电子表格中获取所需数据的最简单方法是什么?

额外信息:

  1. 电子表格有超过17,000个条目
  2. 上面提到的function可能会被调用最多8次
  3. 我不必使用Excel电子表格就是我现在所拥有的
  4. 我永远不需要用我的代码编辑电子表格

我在网上search,但是我能find的所有东西都比我想要做的要复杂得多,这使我很难理解我在寻找什么。

谢谢你的帮助,指着我正确的方向。

我使用了纯文本文件(csv或tsv,这两个文件都可以直接从Excel中导出)

通过xmlhttprequest将其加载到stringvar中。 通常,浏览器caching将停止在每个页面加载下载文件。

然后有一个正则expression式根据需要parsing出这些值。

所有没有使用任何第三方….我可以挖出的代码,如果你想。

例如:您需要将data.txt文件放在与此页面相同的Web文件夹中,或更新path…

  <html> <head> <script> var fileName = "data.txt"; var data = ""; req = new XMLHttpRequest(); req.open("GET", fileName, false); req.addEventListener("readystatechange", function (e) { data = req.responseText ; }); req.send(); function getInfoByCode(c){ if( data == "" ){ return 'DataNotReady' ; } else { var rx = new RegExp( "^(" + c + ")\\s+\\|\\s+(.+)\\s+\\|\\s+\\s+(.+)\\|", 'm' ) ; var values = data.match(rx,'m'); return { airport:values[2] , city:values[3] }; } } function clickButton(){ var e = document.getElementById("code"); var ret = getInfoByCode(e.value); var res = document.getElementById("res"); res.innerText = "Airport:" + ret.airport + " in " + ret.city; } </script> </head> <body> <input id="code" value="AUA"> <button onclick="clickButton();">Find</button> <div id="res"> </div> </body> </html> 

我最终在shancarter.com/data_converter上使用了一个工具将我的flie转换为JSON文件并将其链接到我的页面。 现在我只是循环通过该JSON对象来获得我所需要的。 这似乎是对我的特殊需求最简单的方法。