当前位置: 首页 > 知识库问答 >
问题:

基于用户指定的数字动态添加超文本标记语言表单字段[重复]

卫琛
2023-03-14

我有一个名为消息数量的表单字段,基于用户指定的数量,我希望下面动态生成确切的文本字段数量,以允许用户输入指定数量的消息。

我浏览了一些使用JQuery生成动态表单字段的示例,但由于我不熟悉JQuery,这些示例对我来说太复杂了。我知道JavaScript的基础知识,如果我能找到一个使用JavaScript的查询解决方案,我将不胜感激。

共有3个答案

姬高扬
2023-03-14

这是一个简单的任务,jQuery使它变得更简单。您需要首先从可以使用.val()或.value的输入字段中获取值。获得值后,检查它是否为整数。现在,只需使用.append()函数来动态添加元素。

超文本标记语言

<form id="myForm">
    Number of Messages: <input id="msgs" type="text"> </input>
    <div id="addmsg">
    </div>
</form>

JAVASCRIPT

$("#msgs").on('change', function()

{
    var num = this.value;
    if(Math.floor(num) == num && $.isNumeric(num))
    {
         $("#addmsg").text('');
        for(var i = 0; i < num; i++)
        {
            $("#addmsg").append("<input type='text'/><br/>");
        }
    }
});

不停摆弄

注意,每次输入中的值更改时,我首先通过以下方式清除div:

$("#addmsg").text('');

然后我循环并不断添加输入字段。我希望这有帮助!

羊冠玉
2023-03-14

你可以试试类似的东西。。。

var wrapper_div = document.getElementById('input_set');
var btn = document.getElementById('btn');

btn.addEventListener('click', function() {
  var n = document.getElementById("no_of_fields").value;
  var fieldset = document.createElement('div'),
    newInput;
  for (var k = 0; k < n; k++) {

    newInput = document.createElement('input');
    newInput.value = '';
    newInput.type = 'text';
    newInput.placeholder = "Textfield no. " + k;
    fieldset.appendChild(newInput);
    fieldset.appendChild(document.createElement('br'));
  }

  wrapper_div.insertBefore(fieldset, this);

}, false);
No. of textfields :
<input id="no_of_fields" type="text" />

<div id="input_set">
  <p>
    <label for="my_input"></label>
  </p>
  <button id="btn" href="#">Add</button>
</div>
公西运良
2023-03-14
function addinputFields(){
    var number = document.getElementById("member").value;

    for (i=0;i<number;i++){

        var input = document.createElement("input");
        input.type = "text";
        container.appendChild(input);
        container.appendChild(document.createElement("br"));
    }
}

和html代码将是

    Number of members:<input type="text" id="member" name="member" value=""><br />
<button id="btn" onclick="addinputFields()">Button</button>
    <div id="container"/>


在这里小提琴

 类似资料:
  • 在VAADIN组件中,用户可以选择插入一到N个问题答案。 初始:第一个答案应有一个文本字段,带有按钮(“添加另一个答案”) 按下按钮时,应为第二个答案添加一个新的文本字段,以此类推。。。 我的问题是,如何在按钮按下时实现新文本字段的动态加载? 我添加了一张我如何想象这个问题的图片。

  • 我正在使用ITextRenderer从html生成PDF。然而,我得到以下异常: 你能帮帮我吗? 任何帮助都将不胜感激。 先谢谢你。

  • 问题内容: 我的表格中有3个字段。我有一个提交按钮和一个“添加其他字段”按钮。我知道我可以使用表单类中的方法添加字段。 我是Python和Django的新手,并且陷入了一个初学者的问题;我的问题是: 当我单击“添加其他字段”按钮时,添加其他字段的过程是什么? 是否需要再次呈现表单? 我如何以及何时打电话,甚至必须打电话? 如何将参数传递给? 问题答案: 你的表单必须基于从POST传递给它的一些变量

  • 问题内容: 我将如何在表单中添加功能,以便用户可以通过单击“添加”来添加更多输入字段。这使用了角度正式库。 这是确切功能的示例,但仅使用angularjs完成。 动态添加表单字段 问题答案: 看到这个plnkr 这是您需要的示例。正如您在插件中看到的那样,可以通过单击按钮动态创建一个。单击按钮也可以删除创建的内容。 请参阅下面的 HTML 和 JS 将如下

  • 我试图创建一个窗口,其中有一个头,内容和脚部分,所有3个部分的内容可以变化,我试图实现的是,头和脚的高度扩展,以适应他们的内容(可以是0px到300px的任何内容)和'内容'部分展开以填充容器中的剩余空间。如果'内容'框的内容太大,它应该显示滚动条。 这是我到目前为止所拥有的: 最后,我想让内容滚动到页眉和页脚后面,但这需要在顶部和底部的内容框中添加边距/填充,但页眉和页脚高度未知。 如果我必须求

  • 我想使用JQuery向没有值的HTML元素添加属性 添加所需的 如果属性后面没有,该怎么做?