来自表单输入的Javascript多维数组循环

我对数组的数组有疑问。我需要函数clickMe()来允许我输出[[1,1,1],[2,2,2]等数组。

我的问题是,现在值变成[1,2,etc]。我知道for循环内的for循环将是实现此目的的最佳方法,但是我将如何获得五个部分的输入?

一旦我弄清楚了这一点,我应该能够从这些阵列中退出而不会出现任何问题。我希望将其完全保留在Javascript中。

    var qNumber;        
function onEnter() {
    var qNumber = document.getElementsByName("numberBox")[0].value;
    if(event.keyCode == 13) {
        if (typeof(Storage) !== "undefined") {
        localStorage.setItem("qNumber",qNumber);
        console.log(qNumber + " stored successfully");
        } else {
        console.log("Sorry,your browser does not support Web Storage...");
        }
        var qID = document.getElementById("numBox");
        var submitBtn = document.getElementById("submitButton");
        var a = qNumber - 1;
        var b = 0;
        while (b < a) {
            var formClone = document.getElementsByClassname("formBox")[0];
            var listClone = formClone.cloneNode(true);
            var text =b+2;
            document.getElementById("forms").append(listClone);
            b++;
        }
        return qID.parentNode.removeChild(qID);
    }
    return qNumber;
}
function clickMe() {
    var q = localStorage.getItem("qNumber");
    console.log(q);
    var inputNow = [];
    var allInputs = [];
    var eachArray = [];
    var inputNow = document.getElementsByTagName("input");
    for(x=0; x < inputNow.length; x++) {
        allInputs.push(inputNow[x].value);
         console.log(allInputs);
    }
    localStorage.clear();
}
input{
    display: block;
}
<div id="forms">
    <span id="numBox">
    <label for="numberBox">Number of Forms</label>
    <input type="number" name="numberBox" onkeydown="onEnter()" />
    </span>
    <form id="formBox" name="formBox" action="#" onsubmit="return false;">
        <label for="info1">Input 1:</label>
        <input type="text" name="info1" />
        <label for="info2">Input 2:
        </label>
        <input type="text" name="info2" />
        <label for="info3">Input 3:
        </label>
        <input type="text" name="info3" />
        <label for="info4">Input 4:
        </label>
        <input type="text" name="info4" />
        <label for="info5">Input 5:
        </label>
        <input type="text" name="info5" />
    </form>
</div>
<input type="submit" value="Submit" id="submitButton" onclick="clickMe()" />

<div id="content">
    <span id="info1">input1</span>
    <br/>
    <span id="info2">input2</span>
    <br/>
    <span id="info3">input3</span>
    <br/>
    <span id="info4">input4</span>
    <br/>
    <span id="info5">input5</span>
</div>

S329817566 回答:来自表单输入的Javascript多维数组循环

您始终可以执行以下操作:

var allInputs = [];
var groupInputs = [];
for (x=0; x < inputNow.length; x++) {
    groupInputs.push(inputNow[x].value);
    if (groupInputs.length === 5 || x === inputNow.length - 1) {
        allInputs.push(groupInputs);
        groupInputs = [];
    }
}
本文链接:https://www.f2er.com/3127906.html

大家都在问