在没有重新分配的情况下,函数内的变量值随时间变化
Value of variable changing over time inside function w/o reassignment
<script>
document
.getElementById('country')
.addEventListener('change', function() {
'use strict';
var value1 = this.value;
console.log(value1);
var vis = document.querySelectorAll('.input-group-addon'),
country = document.getElementsByClassName(value1);
console.log(country.length);
// Point One
var i;
if (vis !== null) {
for (i = 0; i < vis.length; i++)
vis[i].className = 'input-group-addon inv';
console.log(country.length);
// Point Two
}
if (country !== null) {
for (i = 0; i < country.length; i++) {
country[i].className = 'input-group-addon';
// Point Three
}
}
});
</script>
这件事已经困扰我一段时间了。我正在尝试获取中选定值的值
document.querySelectorAll('.input-group-addon')
并在中找到匹配的类名
document.getElementsByClassName(value1)
国家/地区的节点列表在第一点可用,在第二点更改为null。
我的代码中是否存在基本的逻辑或语法错误?
并且在点二处变为零
我想你的意思是名单是空的。变量不应该神奇地变成null
。
getElementsByClassName
返回实时HTMLCollection
。这意味着它将始终反映文档的当前状态。如果更改元素的类名,它将自动添加到集合中或从集合中删除。
如果您不希望这样,那么可以使用querySelectorAll
,它返回一个非活动的集合,或者将该集合转换为数组。
相关文章:
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- 如何在不使用 new 关键字的情况下从函数创建对象
- 在什么情况下需要同时使用compile&链接函数的角度
- 为什么在这种情况下,“This”确实充当javascript函数中的私有成员
- 是否可以在不更改上下文的情况下调用函数.apply
- 如何在不编写样板代码的情况下在Node中创建可重用函数
- 是否可以在没有外部输入的情况下使函数具有自我意识
- 如何在不预定义的情况下将javascript函数传递到另一个函数中
- setTimeout()在忽略间隔的情况下重复调用函数
- 如何在不使用javascript执行的情况下为函数分配参数
- AJAX函数在没有警报的情况下无法工作
- 在没有大量回调函数的情况下在列表元素上循环播放同一动画
- 在不使用隔离作用域的情况下执行函数的角度指令
- 在这种情况下,如何将字符串添加到函数中 php
- 我可以在不编写函数的情况下使用 scrollTop 吗?
- ReactJs:this.setState的情况下不调用回调函数
- 如何在没有javascript中的split函数的情况下将字符串拆分为单词
- 在没有内置 Javascript 函数的情况下将基数 10 转换为其他基数 2 的数字
- 函数在我的情况下无法执行