如何在Javascript中获取用户输入并添加到数组中?
我有一个我正在努力开发的页面,它将接受用户输入,然后将其添加到一个数组中,然后接受该数组并从中创建一个选择和选项列表如何在Javascript中获取用户输入并添加到数组中?,javascript,arrays,input,Javascript,Arrays,Input,我有一个我正在努力开发的页面,它将接受用户输入,然后将其添加到一个数组中,然后接受该数组并从中创建一个选择和选项列表 <!DOCTYPE> <html> <head> <script> var option_list = []; // for loop at thats option_list to select select tag for (var i = 0; i < option_list.length; i++){ v
<!DOCTYPE>
<html>
<head>
<script>
var option_list = [];
// for loop at thats option_list to select select tag
for (var i = 0; i < option_list.length; i++){
var opt = option_list[i];
var option = document.createElement("option");
var select = document.getElementById("select");
option.setAttribute("id", opt); //Adding ID to the option list
option.setAttribute("class", "intersect-option"); // adds classes to option
option.value(opt); // adds value to option list
select.appendChild(option); // Adds option to the list.
}
function add_option(name){
var name = document.getElementById("name").value;
name.push(option_list());
}
</script>
</head>
<body>
<input type="text" id="name" value="">
<input type="button" onclick="add_option()" value="add person">
<select id="select">
</select>
</body>
</html>
var选项列表=[];
//用于在该选项处循环\u列表以选择标记
对于(变量i=0;i
我遇到的问题是,当我尝试输入我得到的信息时
未捕获类型错误:选项列表不是函数
在添加选项(selectTest.html:19)
在HTMLInputElement.onclick(selectTest.html:25)
我不确定我做错了什么,任何帮助都将不胜感激 您应该将
name
推入选项列表数组。正确的语法是option\u list.push(name)代码>
将元素推入数组的方式与此相反:
option_list.push(name);
正如它所说的,option_list不是一个函数,标识符后面的平衡圆括号在C系列语言中表示函数调用,因此option_list()不是一个有效的表达式
此外,您真的打算从零循环到空数组的长度(等于零)?
var选项列表=[];
//用于在该选项处循环\u列表以选择标记
var select=document.getElementById(“select”);
函数添加选项(名称){
var name=document.getElementById(“name”).value;
var option=document.createElement(“选项”);
var label=document.createTextNode(名称);
option.setAttribute(“id”,name);//将id添加到选项列表中
option.setAttribute(“类”、“相交选项”);//将类添加到选项
option.value=name;//向选项列表添加值
选项。追加子项(标签);
select.appendChild(option);//将选项添加到列表中。
}
您正试图调用脚本最后一行中的函数(name.push(option\u list());
)。正确的语法应该是选项列表。按(名称)
。如果您觉得它有用,可能会重复。请勾选它作为答案。
option_list.push(name);
name.push(option_list());
<!DOCTYPE>
<html>
<head>
</head>
<body>
<input type="text" id="name" value="">
<input type="button" onclick="add_option()" value="add person">
<select id="select">
</select>
<script>
var option_list = [];
// for loop at thats option_list to select select tag
var select = document.getElementById("select");
function add_option(name){
var name = document.getElementById("name").value;
var option = document.createElement("option");
var label = document.createTextNode(name);
option.setAttribute("id", name); //Adding ID to the option list
option.setAttribute("class", "intersect-option"); // adds classes to option
option.value = name; // adds value to option list
option.appendChild(label);
select.appendChild(option); // Adds option to the list.
}
</script>
</body>
</html>