我有一个表单,用户可以在其中输入他们完成某项任务所需的时间(分钟和秒),我希望将此输入推入一个空数组中。
目前,当我尝试将数组打印到控制台时,它显示数组中有一个值,但没有显示该值。
<form id="mile1">
Mile 1 Time: <input mile1="mile1" type="time" size="20">
</form>
<br>
<button class="test" onclick="storeValue()">test</button>
var userTimes = [];
let storeValue = function() {
let inputTime = document.getElementById('mile1').value;
userTimes.push(userTimes);
}
我希望能够知道表单中输入的值已经存储在数组中,稍后可以用于进一步的计算。任何帮助都将不胜感激。
发布于 2019-06-21 21:59:04
下面是一个包含验证的解决方案:
<form id="mile-form">
Mile 1 Time: <input id = "mile1" type= "time" size="20">
</form>
<button class="test" onclick="storeValue()">test</button>
const userTimes = [];
const storeValue = function () {
const mile1 = document.querySelector("#mile1");
if (!mile1.value || mile1.validationMessage) {
console.log("Error message here");
} else {
userTimes.push(mile1.value);
}
}
请注意,拥有全局变量是一种代码味道。您应该考虑重构以收紧userTimes
的范围。
发布于 2019-06-21 21:42:57
获取输入元素的值,而不是表单。并且您需要将inputTime
推入数组。
userTimes = [];
let storeValue = function () {
let inputTime = document.getElementById('mile1').value;
userTimes.push(inputTime);
console.log(userTimes);
}
<form >
Mile 1 Time: <input id="mile1" type= 'time' size='20'> </form> <br>
<button class='test' onclick="storeValue()">test</button>
https://stackoverflow.com/questions/56704486
复制相似问题