我需要帮助扩展此JavaScript(借鉴https://www.quirksmode.org/dom/domform.html):
var appCounter = 0;
function anotherApp() {
appCounter = appCounter + 1;
var newAppField = document.getElementById("keyApp").cloneNode(true);
newAppField.id = '';
newAppField.style.display = 'block';
var newApp = newAppField.childNodes;
for (var i = 0; i < newApp.length; i++) {
var theName = newApp[i].name
if (theName) {
newApp[i].name = theName + appCounter;
}
}
var insertApp = document.getElementById('keyApp');
insertApp.parentNode.insertBefore(newAppField, insertApp);
document.getElementById('appCount').value = appCounter
}
当我的表单中的元素是:
时,这很好用<div id="keyApp" style="display:none">
<input type="text" name="application" id="application">
<input type="text" name="usage" id="usage">
<\div>
但是当我在输入中添加div
时(引导样式的原因)我无法更新输入名称:
<div id="keyApp" style="display:none">
<div class="col-md-2">
<input type="text" name="application" id="application">
</div>
<div class="col-md-2">
<input type="text" name="usage" id="usage">
</div>
<\div>
如何扩展脚本以修改这些新div
中的输入名称?
答案 0 :(得分:0)
由于现在有另一个图层,您需要现在获取newApp[i].childNodes[0]
以获取实际的输入元素。
newApp
现在包含带有div
样式的col-md-2
元素列表,您需要让这些div
元素中的子元素进入。