Javascript For循环被忽略
为什么会忽略xyz循环?这是一把小提琴 请记住,这是一个专有的内容管理系统,我不能提及。Javascript For循环被忽略,javascript,html,css,Javascript,Html,Css,为什么会忽略xyz循环?这是一把小提琴 请记住,这是一个专有的内容管理系统,我不能提及。 由于某种原因,小提琴不运行该功能。发生的情况是,选项卡没有设置回“无”,因此所有选项卡看起来都处于活动状态。有什么建议吗 编辑存在的字段集。我不能分享那部分代码。对不起 在ie10和ff26.0中进行测试 function tabAction(tab) { var numberOfTabs = document.getElementsByTagName("li"); var x = 0;
由于某种原因,小提琴不运行该功能。发生的情况是,选项卡没有设置回“无”,因此所有选项卡看起来都处于活动状态。有什么建议吗 编辑存在的字段集。我不能分享那部分代码。对不起 在ie10和ff26.0中进行测试
function tabAction(tab) {
var numberOfTabs = document.getElementsByTagName("li");
var x = 0;
var xyz = 0;
//alert(tab);
debugger;
var loopEnd = document.getElementsByTagName("fieldset").length;
document.getElementsByTagName("fieldset")[tab].style.display = "block";
document.getElementsByTagName("fieldset")[tab].style.clear = "both";
document.getElementsByTagName("li")[tab].className = "active";
if(tab > 5) {
document.getElementsByTagName("li")[tab].className = "active"; // show task tab
for(x = 6; x < loopEnd; x++) {
document.getElementsByTagName("fieldset")[x].style.display = "block";
document.getElementsByTagName("fieldset")[x].style.clear = "both";
}
}
for(xyz = 0; xyz < numberOfTabs; xyz++){
alert(xyz);
if (xyz !== tab) {
document.getElementsByTagName("li")[x].className = "none";
}
}
for(x = 0; x < loopEnd; x++) {
if (x !== tab) {
document.getElementsByTagName("fieldset")[x].style.display = "none";
}
if (x > 5){
document.getElementsByTagName("fieldset")[x].style.display = "none";// change this
}
}
}
功能选项卡动作(选项卡){
var numberOfTabs=document.getElementsByTagName(“li”);
var x=0;
var xyz=0;
//警报(选项卡);
调试器;
var loopEnd=document.getElementsByTagName(“字段集”).length;
document.getElementsByTagName(“字段集”)[tab].style.display=“块”;
document.getElementsByTagName(“字段集”)[tab].style.clear=“两者”;
document.getElementsByTagName(“li”)[tab].className=“active”;
如果(选项卡>5){
document.getElementsByTagName(“li”)[tab].className=“active”;//显示任务选项卡
对于(x=6;x5){
document.getElementsByTagName(“字段集”)[x].style.display=“无”//更改此设置
}
}
}
从未设置numberOfTabs
我无法从您的代码中导出该值。看看你的HTML,我猜
7
numberOfTabs
从未设置过
我无法从您的代码中导出该值。看看你的HTML,我想
7
我想numberOfTabs应该是document.getElementsByTagName(“li”).length
除了numberOfTabs,document.getElementsByTagName(“li”)[x]中的x不应该存在吗。className=“无”;是xyz
我认为使用document.getElementsByTagName(“li”)来获取所有选项卡不是一个好主意,因为当HTML文档中有其他
我认为使用document.getElementsByTagName(“li”)来获取所有选项卡不是一个好主意,因为当HTML文档中有其他
document.getElementsByTagName("fieldset")[tab].style.display = "block";
HTML中没有
fieldset
元素,因此document.getElementsByTagName(“fieldset”)[tab]
未定义,并且您无法设置未定义的属性
document.getElementsByTagName("fieldset")[tab].style.display = "block";
HTML中没有字段集
元素,因此文档。getElementsByTagName(“字段集”)[tab]
未定义,并且无法设置未定义的属性
由于在侧栏中选择了onLoad
,因此小提琴无法工作,因此,您的函数是在匿名窗口中定义的。onload
函数。您的“tabAction”函数未定义,请检查您的小提琴设置。将其更改为无换行选项之一。另一个问题:HTML中没有fieldset
元素,因此所有getElementsByTagName(“fieldset”)
调用都返回空列表。在编辑中,您将numberOfTabs
设置为nodeList
。结尾不是应该有.length
吗?@Barmar将你的.length评论作为回答,我会给你评分。它帮助解决了这个问题。提琴不起作用,因为您在侧栏中选择了onLoad
,因此您的函数在匿名窗口中定义。onLoad
函数。您的“tabAction”函数未定义,请检查您的提琴设置。将其更改为无换行选项之一。另一个问题:HTML中没有fieldset
元素,因此所有getElementsByTagName(“fieldset”)
调用都返回空列表。在编辑中,您将numberOfTabs
设置为nodeList
。结尾不是应该有.length
吗?@Barmar将你的.length评论作为回答,我会给你评分。这有助于解决这个问题。我只是添加了tabs变量的数量。它最初不在函数范围内,我刚刚添加了tabs数变量。这本来不在问题的范围之内。我不能共享html的字段集部分。如果我不能通过那行代码,我就不能为您调试代码。我想你只能靠你自己了。编辑问题。我不能共享html的字段集部分。如果我不能通过那行代码,我就不能为您调试代码。我想你是自己的。或者给所有相关的标记一个类,然后使用getElementsByClassName
+1问题显然是x
而不是xyz
在xyz
循环中的使用。除非他在这里又犯了一个复制错误。我不知道当他复制代码时,用这么多的方法修改代码时,他希望我们如何告诉我们他的代码有什么问题。或者给所有相关的标记一个类,然后使用getElementsByClassName
+1问题是