Javascript 从表单获取输入并将其保存到数组

Javascript 从表单获取输入并将其保存到数组,javascript,html,arrays,Javascript,Html,Arrays,我无法将其转换为数组。我不完全理解如何从表单中获取输入并将其保存在数组中 我的项目状态:不要将输入保存在一组变量中,然后将它们放入数组中。 使用数组作为数据保存变量的集合。这是一个什么样的数据 结构是为 在过去的两个小时里,我一直在寻找帮助我的方法。我必须用JavaScript来完成这个项目,但是我一直在寻找jquery,我不太确定如何将它转换成JavaScript 关于如何接受表单输入并将其保存在数组中,有什么建议吗 这只是我项目的一小部分。我刚刚使用了第一个函数和附加到该函数的HTML 代码

我无法将其转换为数组。我不完全理解如何从表单中获取输入并将其保存在数组中

我的项目状态:不要将输入保存在一组变量中,然后将它们放入数组中。 使用数组作为数据保存变量的集合。这是一个什么样的数据 结构是为

在过去的两个小时里,我一直在寻找帮助我的方法。我必须用JavaScript来完成这个项目,但是我一直在寻找jquery,我不太确定如何将它转换成JavaScript

关于如何接受表单输入并将其保存在数组中,有什么建议吗

这只是我项目的一小部分。我刚刚使用了第一个函数和附加到该函数的HTML

代码段中的代码

函数getID{ var studentID=新数组; studentID=document.forms[getFormInfo][txtStudentID].value; 数值上的变量=/^[0-9]+$/; //检查Student ID:字段中是否为空。 如果studentID.length==0{ document.getElementById'divAllField'.style.display=; forms[getFormInfo][txtStudentID].focus; 返回false; }//if语句的结尾 否则{ 如果studentID.length==8&&studentID.matchnumberOnly{ //运行下一个函数 getFirstName; }//else/if语句的结尾 否则{ //显示错误消息 document.getElementById'divStudentID'.style.display=; //将焦点放在有错误的输入字段上。 forms[getFormInfo][txtStudentID].focus; }//else/if/else语句的结尾 }//else语句的结尾 }//函数getID的结尾 h1{ 文本对齐:居中; 颜色:青绿色; } 桌子{ 边界间距:8px; 边框:2件纯黑; 文本对齐:对齐; } th{ 文本对齐:居中; 填充:8px; 颜色:蓝色; 字体大小:125%; } 运输署{ 填充物:5px; } 输入 挑选{ 宽度:200px; 边框:1px000; 填充:0; 保证金:0; 高度:22px; -moz框大小:边框框; -webkit框大小:边框框; 框大小:边框框; } 输入{ 文本缩进:2px; } 标签{ 浮动:左; 最小宽度:115px; } div{ 填充:3倍; 颜色:红色; 字号:80%; } 显示在网页上-> 用户信息 请确保已填写所有输入框。 学生证: 请输入您的8位学生ID。仅限整数 示例:00123456 使用函数向数组中添加项

function getID() {
   var studentID = [];
   var tstStudentIdVal = document.forms["getFormInfo"]["txtStudentID"].value
   studentID.push(tstStudentIdVal);
   var numberOnly = /^[0-9]+$/;

   //Checks for a null/blank within Student ID: field.
   if (tstStudentIdVal.length == 0) {
     document.getElementById('divAllField').style.display = '';
     document.forms["getFormInfo"]["txtStudentID"].focus();
     return false;
   } //End of if statement
   else {
     if (tstStudentIdVal.length == 8 && tstStudentIdVal.match(numberOnly)) {
       //Run the next function
       getFirstName();
     } //End of else/if statement
     else {
       //Show Error Message
       document.getElementById('divStudentID').style.display = "";
       //Focus on input field with the error.
       document.forms["getFormInfo"]["txtStudentID"].focus();
     } //end of else/if/else statement
   } //End of else statement
 } //End of function getID()

如果不能使用jQuery,我认为最优雅的解决方案是获取所有输入的节点列表,然后将输入数组转换为自己设计的数组

在下面的代码段中,生成的数组中有对象,每个对象都有一个名称和值,它们直接来自表单中的文本输入。您的问题不是很清楚生成的数组应该是什么样子

函数getID{ var nodes=document.forms[getFormInfo].querySelectorAllinput[type='text']; var数组=[].map.callnodes,functionitem{ 返回{name:item.name,value:item.value}; }; console.logarray; }
也可以只调用[].map.callnodes,functionitem{…}@ScottKaye绝对正确,我最近半个月发现了这个把戏,并一直在尝试在任何地方应用它:@ScottKaye我来回走了几次,决定我真的很喜欢你的.call实现。我编辑了答案以使用您建议的语法。