我能够将文本数据加载到.js文件中的javascript数组中,但不能加载到html中

我能够将文本数据加载到.js文件中的javascript数组中,但不能加载到html中,javascript,html,Javascript,Html,我需要将文本文件数据加载到javascript数组中,并使用html定义一个动态表单 我尝试了以下代码,用于从文本文件中提取数据并存储在javascript数组中,只要它在.js文件中就可以工作 var fs = require('fs'); var textByLine = fs.readFileSync('123.txt').toString().split("\n"); console.log(textByLine); 但是当我把它嵌入到我的html文件中时,它就不起作用了 下面是我的h

我需要将文本文件数据加载到javascript数组中,并使用html定义一个动态表单

我尝试了以下代码,用于从文本文件中提取数据并存储在javascript数组中,只要它在.js文件中就可以工作

var fs = require('fs');
var textByLine = fs.readFileSync('123.txt').toString().split("\n");
console.log(textByLine);
但是当我把它嵌入到我的html文件中时,它就不起作用了

下面是我的html代码。现在我只是用几个月组成一个数组,但我需要用文本文件中的数组来替换它

<html>
<head>
<title></title>
<META NAME="DESCRIPTION" CONTENT="">
<META NAME="KEYWORDS" CONTENT="">


<script language="javascript">
var dt=new Date();
var dt_month=dt.getMonth() +1;
//alert(dt_month);
function addOption(selectbox,text,value )
{
    var optn = document.createElement("OPTION");
    optn.text = text;
    optn.value = value;
    selectbox.options.add(optn);
}

function addOption_list(){
var month = new Array("January","February","March","April","May","June","July","August",
"September","October","November","December");
for (var i=0; i < month.length;++i){
addOption(document.drop_list.Month_list, month[i], month[i]);
document.drop_list.Month_list.options[i].selected=true;
}
}
</script>
</head>

<body onLoad="addOption_list()";>
You can see the view-> Source of this page. 
<br><br>
<FORM name="drop_list" action="yourpage.php" method="POST" >

<SELECT  NAME="Month_list">
<Option value="" >Month list</option>
</SELECT>
</form>


</body>
</html>

var dt=新日期();
var dt_month=dt.getMonth()+1;
//警报(dt_月);
功能添加选项(选择框、文本、值)
{
var optn=document.createElement(“选项”);
optn.text=文本;
optn.value=值;
选择框。选项。添加(optn);
}
函数addOption_list(){
var month=新数组(“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”,
“九月”、“十月”、“十一月”、“十二月”);
对于(变量i=0;i来源。


月表
我给出了3行代码,在上面的代码中,它作为addOption_list函数中的.js文件独立工作,但不起作用。谢谢你在这方面的帮助

提前感谢

文件系统(fs)模块是用于NodeJS应用程序的,因此需要在.js文件中。如果要将文件加载到html中,可以改用Ajax。这可能会起作用:

<script>
function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      myFunction(this.responseText);
    }
  };
  xhttp.open("GET", "123.txt", true);
  xhttp.send();
}

function myFunction(data) {
  var textByLine = data.split("\n");
  console.log(textByLine);
}

loadDoc();

</script>

函数loadDoc(){
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
myFunction(this.responseText);
}
};
xhttp.open(“GET”,“123.txt”,true);
xhttp.send();
}
函数myFunction(数据){
var textByLine=data.split(“\n”);
console.log(textByLine);
}
loadDoc();

您必须将数组写入提供给客户端的文档,或者拥有一个端点,当ping时,该端点返回数组
fs。readFileSync
是唯一的节点,在浏览器中不存在。
自您编写网页以来必须有一段时间-HTML 4.0(1997)中不推荐使用
语言
属性:psorry我在这方面有点幼稚…..我们有伪代码吗?可能重复感谢David的代码。我在脚本中添加了上述函数,并尝试将textByLine的元素推送到默认数组中。它没有发生。我没有收到任何错误,但它没有将元素动态地从该数组中提取到下拉列表中。我们如何调试这种代码?感谢您的时间和努力,下面是: