如果当前选项卡为空,则循环到下一个选项卡 - Jquery UI选项卡

时间:2010-06-29 19:06:51

标签: javascript jquery jquery-ui

我正在使用jquery ui中的标签。

当页面加载并且第一个标签为空时,我希望第二个标签被选中。如果第二个选项卡为空,则选择第三个选项卡等。

这就是我所拥有的并且它有效,但有更清洁/更好的方法吗?

$('#tabs').tabs( { selected: 0 } );
var fullTab = 0;
if ($('#tab0 > .no-results').length != 0) 
{
   $('#tabs').tabs( { selected: 1 } );
} else {
fullTab = 1;
}

if ($('#tab1 > .no-results').length != 0  && fullTab == 0) 
{
    $('#tabs').tabs( { selected: 2 } );
} else {
fullTab = 1;
}

if ($('#tab2 > .no-results').length != 0 && fullTab == 0) 
{
    $('#tabs').tabs( { selected: 3 } );
} else {
fullTab = 1;
}

if ($('#tab3 > .no-results').length != 0 && fullTab == 0) 
{
    $('#tabs').tabs( { selected: 0 } );
} else {
fullTab = 1;
}

1 个答案:

答案 0 :(得分:0)

简单的循环。

$('#tabs').tabs( { selected: 0 } ); 
var fullTab = 0; 
var maxTab = 3;
for(i=0;i<=maxTab;i++){
    if ($('#tab' + i + ' > .no-results').length != 0)  
    { 
       $('#tabs').tabs( { selected: (i==maxTab)?0:i+1 } ); 
    } else { 
    fullTab = 1; 
    } 
}