Javascript jQueryUI制表符禁用方法不工作:在不应禁用所有制表符时禁用所有制表符

Javascript jQueryUI制表符禁用方法不工作:在不应禁用所有制表符时禁用所有制表符,javascript,jquery,jquery-ui,jquery-tabs,Javascript,Jquery,Jquery Ui,Jquery Tabs,当我调用disable方法时,所有jQueryUI选项卡都被禁用,包括我从索引数组中漏掉的一个(索引1)。以下是一个示例: <div id="tabs"> <ul> <li><a href="#tabs1">one</a></li> <li><a href="#tabs2">two</a></li> <li><a href="#ta

当我调用disable方法时,所有jQueryUI选项卡都被禁用,包括我从索引数组中漏掉的一个(索引1)。以下是一个示例:

<div id="tabs">
  <ul>
    <li><a href="#tabs1">one</a></li>
    <li><a href="#tabs2">two</a></li>
    <li><a href="#tabs3">three</a></li>
    <li><a href="#tabs4">four</a></li>
    <li><a href="#tabs5">five</a></li>
  </ul>

  <div id="tabs1" style="display: none;"><p>tab 1 content</p></div>
  <div id="tabs2" style="display: none;"><p>tab 2 content</p></div>
  <div id="tabs3" style="display: none;"><p>tab 3 content</p></div>
  <div id="tabs4" style="display: none;"><p>tab 4 content</p></div>
  <div id="tabs5" style="display: none;"><p>tab 5 content</p></div>
</div>

<script>
    function disableAllExcept1(){
        $('#tabs').tabs('option', 'disabled', [0,2,3,4,5]);
        $('#tabs').tabs('option', 'active', 1);
    }

    $(function() {
        $( "#tabs" ).tabs();
        disableAllExcept1();
    });
</script>

表1内容

表2内容

表3内容

表4内容

表5内容

函数disableAllExcept1(){ $(#tabs')。tabs('option','disabled',[0,2,3,4,5]); $('选项卡').tabs('选项','活动',1); } $(函数(){ $(“#制表符”).tabs(); disableAllExcept1(); });

为什么禁用选项卡2(索引1)?

问题是数组中有一个额外的索引。我删除了一个选项卡,但没有从数组中删除索引(5)。不过,这种行为似乎很奇怪,甚至可能是马车。我希望它只是忽略额外的索引或发出警告或错误

这:

应该是这样的:

$('#tabs').tabs('option', 'disabled', [0,2,3,4]);
下面是一个JSFIDLE演示该问题:

$('#tabs').tabs('option', 'disabled', [0,2,3,4]);