【发布时间】:2017-07-09 04:29:09
【问题描述】:
所以我有这个 HTML 代码:
<form method="get" action="#" id="startForm">
<input type="text" name="period" id="period" placeholder="The number of days"/>
<input type="submit" name="submit" value="submit" id="startSubmit"/>
</form>
这是 JavaScript 代码:
var btnSubmit = document.getElementById('startSubmit');
btnSubmit.addEventListener('click', function (e) {
e.preventDefault();
var myForm = document.createElement('form');
var period = document.getElementById('period').value;
for(var i = 0; i < period ; i++){
var input0 = document.createElement('input');
input0.setAttribute('type', 'text');
input0.setAttribute('placeholder', 'The count of tasks');
input0.setAttribute('style', 'margin: 10px');
input0.setAttribute('id', 'taskDone'+i);
input0.setAttribute('onchange', 'myFunction()');
document.body.appendChild(input0);
myForm.appendChild(input0);
document.body.appendChild(myForm);
function myFunction(){
var taskDone = document.getElementById('taskDone').value;
var newForm = document.createElement('form');
for(var j = 0; j < taskDone ; j++){
var input1 = document.createElement('input');
input1.setAttribute('type', 'text');
input1.setAttribute('id', 'time'+i);
document.body.appendChild(input1);
newForm.appendChild(input1);
document.body.appendChild(newForm);
};
};
};
console.log(myForm);
});
所以我的问题是,在函数中,当我尝试从生成的 DOM 元素中获取值时,它将重置页面我想要做的是将要放入输入中的数字并将其设为许多新的输入文本框,因为它是输入的数字(它从生成的 dom 元素中获取数字并创建新的 dom 元素)
【问题讨论】:
-
这和Java有什么关系?
-
它应该是 JavaScript 但我想我没有足够的空间
标签: javascript html for-loop dom