繁体   English   中英

单击以添加隐藏的输入; 如何编写可以添加无限新输入的函数?

[英]Click to add hidden input; How can I write a function which can add infinite new inputs?

我有以下代码。 单击“添加更多”时,它将显示一个隐藏的输入文本区域。 如何将其放入函数中,然后我可以单击无限期添加? 我尝试过,但没有成功。 谢谢!

 function HideContent(d) { document.getElementById('cng').style.display = "block"; document.getElementById('cng').innerHTML='Click to show.'; document.getElementById(d).style.display = "none"; } function ShowContent(d, s) { document.getElementById(s).style.display = "none"; document.getElementById(d).style.display = "list-item"; } function ReverseDisplay(d) { if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; } else { document.getElementById(d).style.display = "none"; } } 
 <form> <input type="textarea" name="user3"> <a href="javascript:ShowContent('uniquename1', 'cng1')" backgorund="orange"> <div id="cng1" style="display">Click to add more.</div> </a> <div id="uniquename1" style="display:none;"> <input type="textarea" name="user1"> <a href="javascript:ShowContent('uniquename2', 'cng2')"> <div id="cng2" style="display">Click to add more</div> </a> </div> <div id="uniquename2" style="display:none;"> <input type="textarea" name="user2"> <a href="javascript:ShowContent('uniquename3', 'cng3')"> <div id="cng3" style="display">Click to add more</div> </a> </div> <br><input type="submit"> </form> 

您应该从JS函数使用createElement动态创建它们,而不是从头开始编码每个输入:

 var inputNumber = 0, inputHolder = document.getElementById("inputHolder"), addInput = function() { // Creates new input var myNewBox = document.createElement("input"); // Gives the unique name to the input myNewBox.setAttribute("name", "cng" + inputNumber); // Adds one so the next input will get a new name inputNumber++; // Adds the new box to the input holder, plus a br tag inputHolder.appendChild(myNewBox); inputHolder.appendChild(document.createElement("br")); }; // Adds the initial input box addInput(); 
 <form> <div id="inputHolder"></div> <br/> <a href="javascript:addInput()">Add another?</a> <br/> <br/> <input type="submit"> </form> 

我怎样才能添加多个输入到这个<div>使用 javascript function?</div><div id="text_translate"><p> 对于上下文,这是我正在开发的基于 Django 的应用程序。 我在 HTML 文档中使用此脚本。 当按下按钮时,它会运行以下 function。 目的是创建一个元素,然后包含几个输入等等。 我遇到的问题是,当我使用以下 append 语句向 div 添加一个输入时,如果我尝试添加另一个输入类型(例如复选框),它会覆盖第一个输入(搜索)。 如何在脚本中进行 append 多个输入? 我总共需要 3 个不同的输入。 </p><p></p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false"><div class="snippet-code"><pre class="snippet-code-js lang-js prettyprint-override"> var counter = 1; //limits amount of transactions function addElements() { if (counter &lt; 5) //only allows 4 additional transactions { let div = document.createElement('div'); div.id = 'row' + counter; document.body.appendChild(div); let input = document.createElement('input'); input.id='search'+counter; input.type = 'search'; input.placeholder = 'Search by product name' div.appendChild(input); let button = document.createElement('button'); button.id ='button'+counter; button.type = 'QRscan'; button.innerText = 'QR scan' div.appendChild(button); } counter++ if (counter &gt;= 6) { alert("You have reached the maximum transactions.") } } addElements();</pre></div></div><p></p></div>

[英]How can I add multiple inputs to this <div> using javascript function?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我怎样才能添加多个输入到这个<div>使用 javascript function?</div><div id="text_translate"><p> 对于上下文,这是我正在开发的基于 Django 的应用程序。 我在 HTML 文档中使用此脚本。 当按下按钮时,它会运行以下 function。 目的是创建一个元素,然后包含几个输入等等。 我遇到的问题是,当我使用以下 append 语句向 div 添加一个输入时,如果我尝试添加另一个输入类型(例如复选框),它会覆盖第一个输入(搜索)。 如何在脚本中进行 append 多个输入? 我总共需要 3 个不同的输入。 </p><p></p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false"><div class="snippet-code"><pre class="snippet-code-js lang-js prettyprint-override"> var counter = 1; //limits amount of transactions function addElements() { if (counter &lt; 5) //only allows 4 additional transactions { let div = document.createElement('div'); div.id = 'row' + counter; document.body.appendChild(div); let input = document.createElement('input'); input.id='search'+counter; input.type = 'search'; input.placeholder = 'Search by product name' div.appendChild(input); let button = document.createElement('button'); button.id ='button'+counter; button.type = 'QRscan'; button.innerText = 'QR scan' div.appendChild(button); } counter++ if (counter &gt;= 6) { alert("You have reached the maximum transactions.") } } addElements();</pre></div></div><p></p></div> 如何使用隐藏的输入框进行输入? 如何将旧输入值添加到新输入值? 如何增加或减少输入天数? 如何在单击时将新的 UI 元素添加到列表中? 如何在字段输入中添加新列表项? 如何添加时间函数然后单击javascript中的按钮 如何添加点击处理程序功能以在Vue中动态链接? 如何将点击功能添加到gmap3功能? 如何将一次性点击事件添加到函数中?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM