基本上我试图找到具有特定类名的所有元素并将其切换到另一个。我有另一个函数,将其切换回原始类名。这是我用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 :(得分:5)
应该只测试> 0
而不是>= 0
。当长度等于零时,没有元素零。