我目前有3个文件,它们在我的计算机上的同一目录中:
- project.html
- javascript.js
- text.txt
'project.html'文件中的代码
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="javascript.js">
</script>
<script
//calling the Google Maps API
</script></script>
</head>
<body>
<div class="content">
<div id="googleMap"></div>
<div id="right_pane_results">hi</div>
<div id="bottom_pane_options">
<button onclick="get_parameters()">Try It</button>
</div>
</div>
</body>
</html>
'javascript.js' 中的代码
function get_parameters() {
alert('hi');
var xhr = new XMLHttpRequest();
xhr.addEventListener('readystatechange', (output) => {
if (xhr.readyState === 4) {
var response = xhr.responseText;
callback(response);
}
});
xhr.open('GET', 'text.txt', true);
xhr.send();
}
'text.txt'文件中的文本
- 铁
- 铝
- 钢
等等...(接近150行)
最终,我想将'text.txt'解析成一个数组,并使用该数组创建一个包含该数组内容的选项菜单。我曾发布过一个问题,询问是否可以使用JavaScript解析文件,答案是否定的,因为存在安全问题。我尝试了JavaScript代码,但没有成功。那么,是否有其他语言可以用来读取文件并创建选项菜单?
最终,我想在'project.html'文件中实现类似以下的功能:
<select>
<option value="1">Line 1 of File</option>
<option value="2">Line 2 of File</option>
<option value="3">Line 3 of File</option>
<!-- etc... -->
</select>
需要注意的一些事情:
- 所有文件都不存储在服务器上,而是从我的计算机运行(所以像
PHP
这样的服务器端语言可能不可行) - 我想根据'text.txt'中的内容自动创建一个选项菜单
- 文件位于同一目录下
- 我不希望用户能够选择要读取哪个文件。'text.txt'是由我制作并填充的另一个程序生成的文件,可能会更改;这就是为什么我希望每次页面加载时都能读取该文件。
file://
协议下而不是http://
,由于 JavaScript 安全沙箱机制,您的 AJAX 请求可能无法正常工作。如果您没有服务器,请尝试使用 MAMP 或 WAMP(我相信它们是免费的)来设置本地 Web 堆栈。 - Adam Hopkinson