根据类名获取元素,并将元素存储在变量中
get elements by class name and store element in variable
我想做以下事情:
function() {
var elements = document.getElementsByClassName('class');
var length = elements.length;
for (var i = 0; i < length; i++) {
var element = elements[i];
element.addEventListener('input', function() { return handleInputEvent(element); }, false);
}
}
function handleInputEvent(element) {
var value = element.value; // empty string
}
但是当我尝试获取元素的值时,即使我键入数字或字母,它也会以空字符串的形式返回。什么好主意吗?
html是一堆输入
<input type='text' class='class'/>
<input type='text' class='class'/>
<input type='text' class='class'/>
每次执行循环时都要重新定义element
。当您在每个事件函数中使用element时,意味着该函数将在函数执行时使用element的值来执行,因此element
将始终引用element
的最后一个值,这将是elements
中的最后一个元素。因此,如果elements
中的最后一个元素的值为''
,则输出将是''
。
不仅如此,您实际上没有返回element.value
,您只是将其作为处理函数内部的局部变量。你应该替换
var value = element.value;
return element.value;
或
console.log(element.value);
相关文章:
- 将数据存储到元素中
- 将元素存储到网格中
- 如何将新附加的元素存储到变量中
- 将 Jquery 创建的 html 元素存储在变量中
- 将多个元素存储在一个变量上
- 是否可以将document.forms["myForm"]中包含的元素存储在一个变量中以方便引用?
- 根据类名获取元素,并将元素存储在变量中
- 将json元素存储到javascript数组中
- 将html元素存储在object中,然后等待ng-include include模板
- 在jQuery中,我可以使用.data()将元素存储到另一个元素上以便快速检索吗?
- 我如何动画元素存储在一个数组?除了我徘徊在上面的那个
- 如何分离一个数组并根据元素存储在不同的数组中
- 如果我将元素存储在javascript变量中,当我调用该变量时,它会再次检查它吗?
- 在javascript中以多维数组元素存储数组对象
- 将jquery克隆元素存储到window.localStorage
- 在Java的Spring框架中,将.properties文件中定义的元素存储到JavaScript变量中的最佳方法是什么
- js,根据数据名称查找/匹配/搜索元素存储的数据
- 为什么jQuery将元素存储为函数
- 添加HTML5 DATA属性元素存储在Javascript变量
- 将元素存储在内存中以防止过于频繁地更新DOM