HTML页面上的动态输入文本字段数

时间:2017-01-02 18:39:45

标签: javascript html

我需要做一个执行以下操作的HTML / JS项目:

  1. 空白HTML页面包含整数输入的文本输入字段 (让我们说不高于30)。

  2. 之后我需要在HTML页面上创建尽可能多的文本输入 我在第一个输入中输入的字段,例如,如果我输入 20,我的初始输入文本下面有20个新的输入文本字段。

  3. 我需要能够在JS中处理这些类似20的输入字段, 例如,通过他们的id等获得他们的价值

  4. 我在执行第1步时没有遇到任何问题,但不知道在第2步和第3步中使用了什么。

    我可以用纯JavaScript做,还是应该开始研究一些框架?角?何反应?还要别的吗?

    我对所有这些花哨的框架名称和徽标感到困惑,但我不明白我需要什么。

2 个答案:

答案 0 :(得分:1)

这可以通过创建新窗口使用JavaScript DOM来实现。首先,检查输入值,然后使用该值创建输入框。

HTML:

<form>
    <input type="number" id="number" />
</form>

JS:

var number = document.getElementById("number").value;
var newWindow = window.open("", "_parent");
newWindow.document.write("<form>");
for(i = 1; i <= number; i++) {
    newWindow.document.write('<input type="text" id="box' + i + '" />');
}
newWindow.document.write("</form>");

该代码将输出在文本框中输入的数字。每个文本框都有一个唯一的ID,例如&#34; box1&#34;,&#34; box2&#34;等。

你不需要任何框架/库,你可以像上面一样使用vanilla JavaScript。有时,jQuery确实有帮助。

答案 1 :(得分:1)

在问之前你应该尝试一些代码!

我认为你需要类似的东西

function func() {
    var para = document.createElement("input");
    var element = document.getElementById("div1");
    var count = document.getElementById('stack').value ;

    if (count < 30) {
            while (count > 0){
            element.appendChild(para);
            count -= 1;
            }
    }else{
        alert("No more than 30 !");
    }
}
<body id="div1">
<input type="number" id="stack">
<button onclick="func()">Do</button>
</body>