大家。
我正在尝试从Input元素类型“ range”中获取值并将其分配给变量,但我一直在获取“ undefined”类型。能否请您提出建议,为什么会发生这种情况,以及如何为变量分配类型“范围”值?
let n;
let range = document.getElementById('range');
range.min = '0';
range.max = '100';
range.step = '1';
range.value = '20';
range.addEventListener('input', () => {
if (this.value > 0 && this.value < 100) {
n = this.value;
}
});
console.log(n);
'undefined'
提前谢谢了!
更改input
以查看印刷在上的beeing值console
。
替换this
为range
。
let n;
let range = document.getElementById('range');
range.min = '0';
range.max = '100';
range.step = '1';
range.value = '20';
range.addEventListener('input', () => {
if (range.value > 0 && range.value < 100) {
n = range.value;
}
console.log(n);
});
<input id="range" type="range">
this
是指node
(HTML DOM元素)和range
您指定的input
。
就像@Taplar提到的一样,console.log()
它也必须在函数内部。
关于node
s的更多信息可以在这里找到:Node对象和Element对象之间的区别?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句