我正在学习 Javascript 并尝试从输入中获取用户输入值。
在我的项目中,我有一个输入表单,当他们添加新数字并单击按钮时,将出现新表单,用户可以输入另一个数字,只要用户单击按钮,新的输入字段就会继续出现.
我想要的是从每个输入中获取值(value)。 我看到一些问题提出类似的问题,但 .document.getElementsByName() 对我不起作用。
let userInput = document.getElementsByName('moneyamount');
inputNum = parseInt(userInput.value);
console.log(inputNum); //result is NaN
我也尝试过 document.querySelector()
let userInput = document.querySelector('#money-amount');
inputNum = parseInt(userInput.value);
console.log(inputNum)
效果很完美,但我需要从一些输入中获取值,因此 querySelector 不适合这种情况。 所以我也尝试了 document.querySelectorAll() ,但是,
let userInput = document.querySelectorAll('#money-amount');
inputNum = parseInt(userInput.value)
console.log(inputNum)// result is NaN
我不确定在这种情况下应该使用什么 DOM。 我需要选择所有元素并需要从中获取值(value)。
这是我的输入 HTML。此时只有一个输入,因为当用户单击“添加”按钮时,将添加新表单。
<input
class="input money"
type="number"
id="money-amount"
placeholder="Enter amount"
name="moneyamount"
required
/>
</div>
希望大家能帮助解决这个问题。
非常感谢!
最佳答案
我觉得处理这个问题的最佳方法是编辑 div 的innerHTML。
例如:
<div id="allTheForms">
<form action="#" onsubmit="addForm();">
<input type="text">
<button type="submit">Submit</button </form>
</div>
<script>
function addForm() {
var currentHTML = document.getElementById("allTheForms").innerHTML;
var newForm = '<form action="#" onsubmit="addForm();"><input type="text"><button type="submit">Submit</button</form>';
document.getElementById("allTheForms").innerHTML = currentHTML + newForm;
}
</script>
这应该允许你做我认为你要求的事情。
关于javascript - 从输入中获取用户输入的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60679306/