【问题标题】:JavaScript reading reading list of form itemsJavaScript 阅读表单项的阅读列表
【发布时间】:2017-10-06 21:13:19
【问题描述】:

我有一个包含多个输入字段的表单:

<input name="a1"/>
<input name="a2"/>
<input name="a3"/>

所有字段名称都相同,加了一个数字。

我需要 JavaScript 将这些值读入一个数组。

for i = 1 to 3
   a(i) = form(i)
next

完整代码:

var listC = [ "C", "A", "B" ]; 
a1 = form.a1.value; 
a2 = form.a2.value;
a3 = form.a3.value; 

if (listC[0] == a1.toUpperCase()) {
    NumCorrect = NumCorrect + 1
}
if (listC[1] == a2.toUpperCase()) {
    NumCorrect = NumCorrect + 1
}
if (listC[2] == a3.toUpperCase()) {
    NumCorrect = NumCorrect + 1
} 

<input type="text" size="2" name="a1" size="2"/>
<input type="text" size="2" name="a2" size="2"/>
<input type="text" size="2" name="a3" size="2"/>

【问题讨论】:

  • 发布 HTML 结构。
  • 您能否包含相关的HTML 并展示您到目前为止所尝试的内容?谢谢。
  • var listC = [ "C", "A", "B" ]; a1 = form.a1.value; a2 = form.a2.value; a3 = form.a3.value; if (listC[0] == a1.toUpperCase()) {NumCorrect = NumCorrect + 1} if (listC[1] == a2.toUpperCase()) {NumCorrect = NumCorrect + 1} if (listC[2] == a3.toUpperCase()) {NumCorrect = NumCorrect + 1}
  • 谁能告诉我如何发帖以便阅读?
  • var arr=[]; for(i=1;i

标签: javascript arrays forms loops


【解决方案1】:

不确定这是不是你想要的。

var a = [],
    inputs = document.querySelectorAll('[name^="a"]');

[].forEach.call(inputs, function(input){
    a.push(input.value);
});

console.log(a);
<input name="a1" value="a111"/>
<input name="a2" value="a222"/>
<input name="a3" value="a333"/>

【讨论】:

  • 不会也选择name="abc"?
  • @11thdimension,不过是 OP 的结构。
  • OP 的格式是a,后面是数字,不是任何东西
【解决方案2】:

你可以通过添加'id'属性类似'name'来做到这一点,

HTML

<input id="name1" name="name1">  
<input id="name2" name="name2">

Javascript

var formData = [];

for(var i=1 ; i<length; i++){
   formData.push($('#name'+i).val());
}

【讨论】:

  • 没有jQuery标签的问题应该用vanilla JS回答。
【解决方案3】:

在不知道表单结构的情况下,您可以使用 vanilla javascript 检索它,如下所示:

var arr = [];

var currentElementIndex = 1;
while(document.getElementsByName('a'+currentElementIndex)) {
  arr.push(document.getElementsByName('a'+currentElementIndex).value);
  currentElementIndex++;
}

假设 id >= 1 并且是连续的。

【讨论】:

    猜你喜欢
    • 2021-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-07
    相关资源
    最近更新 更多