基本上,我试图找到具有特定类名的所有元素,然后将其切换为另一个。我还有另一个函数可以将其切换回原始类名。这是通过onclick触发的我的函数:
function showEventsAppliedTo() {
var myObj = document.getElementsByClassName('notApplied');
while (myObj.length >= 0) {
myObj[0].className = 'mblListItem notAppliedOut';
}
AppliedToButton.set('style', 'display:none;');
EventListingButton.set('style', 'display:block;');
}
我收到一条错误消息,说myObj [0]未定义。知道为什么会这样吗?
注意,我们正在使用Dojo,因此是函数的最后一行。我知道我可以使用jQuery轻松地做到这一点,但是我们没有使用它,并且加载另一个框架也没有意义。
在此先感谢您的帮助。
编辑
感谢Abhishek Mishra的帮助,我修改了处理此循环的方式,并找到了使用JUST dojo进行处理的方法,这是我的首选。这是代码:
function listingClassToggle() {
dojo.query(".notApplied").addClass("notAppliedOut");
dojo.query(".notApplied").removeClass("notApplied");
}
比我以前的解决方案更简单,更轻便的代码。感谢你的帮助。我希望这对其他人有帮助。
最佳答案
应该只测试> 0
而不是>= 0
。当长度等于零时,就没有元素零。