Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery选项卡";加上「;方法创建两个<;部门>;元素_Javascript_Jquery Ui - Fatal编程技术网

Javascript jQuery选项卡";加上「;方法创建两个<;部门>;元素

Javascript jQuery选项卡";加上「;方法创建两个<;部门>;元素,javascript,jquery-ui,Javascript,Jquery Ui,jQuery的tabs ui中的“add”方法向我的“#tabs”元素添加了一个额外的选项卡面板div,这让我很沮丧。这是我用来添加一个选项卡的代码行,该选项卡显示通过Ajax获取内容的日历: $("#tabs").tabs("add", "tabContent.php?id=48&tab=calendar", "Calendar"); 最初只有一个标签,现在应该有两个。事实上,元素中现在存在两个选项卡,但神秘的是,现在有三个元素对应于选项卡面板,如下所示。如果不是因为一个新创建的元素

jQuery的tabs ui中的“add”方法向我的“#tabs”元素添加了一个额外的选项卡面板div,这让我很沮丧。这是我用来添加一个选项卡的代码行,该选项卡显示通过Ajax获取内容的日历:

$("#tabs").tabs("add", "tabContent.php?id=48&tab=calendar", "Calendar");
最初只有一个标签,现在应该有两个。事实上,
元素中现在存在两个选项卡,但神秘的是,现在有三个
元素对应于选项卡面板,如下所示。如果不是因为一个新创建的
元素没有隐藏,即使它对应于一个不活动的选项卡,这也不会是一个问题。因此,
虽然是空的,但在我的第一个和原始选项卡面板的底部占据了一块空间。很抱歉代码混乱,但我包含了所有原始jQuery标记,以准确显示jQuery的功能

<div id="tabs" class="ui-tabs ui-widget ui-widget-content ui-corner-all">
    <ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all">
        <li class="ui-state-default ui-corner-top ui-tabs-selected ui-state-active"><a href="#tabs-1">Tab 1</a></li>
        <li class="ui-state-default ui-corner-top"><a href="#ui-tabs-2"><span>Calendar</span></a></li>
    </ul>
    <div id="tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom">
            Original Tab
    </div>

    <!-- Why are there two divs here?? -->
    <!-- Note that first <div> below not given class 'ui-tabs-hide' -->
    <div id="ui-tabs-2" class="ui-tabs-panel ui-widget-content ui-corner-bottom"></div>
    <div id="ui-tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"></div>
</div>

原始选项卡

注意底部的两个
元素,其中应该只有一个。

我也遇到了同样的问题。我也使用AJAX选项卡

所以我查看了jQueryUI的源代码

函数
add
创建了这个额外的div,但是随后调用函数
\u tabify
,它创建了没有“ui tabs hide”类的额外div。我认为,它创建了额外的div,因为它找不到第一个div

这两个函数都使用
\u tabId
获取新选项卡的id,并使用
u()
函数获取选项卡的索引

它不起作用的原因是在add和tabify函数中调用了两次
u()

但是
u()
以这种方式使用变量
v
++v
,因此它为您提供索引并添加1

因此,在
add
函数中,创建了id为“ui-tabs-1”的div,但在tabify中,您得到了另一个id=“ui-tabs-2”,无法找到它,并创建了另一个div

我试过这样做:在第二次调用_tabId:
I=a._tabId(f)之前添加了
if(!b)v--
。它在
\ tabify
功能中


Var b在创建选项卡时为true,在添加新选项卡时为false。还有一个函数用b=false调用_tabify,它是_setOption。但是我不知道这个添加的代码是否会破坏它。

我也有同样的问题。你有什么进展吗

**编辑:参见

**

我添加了我的标签(这是为了模型的目的)。。。我在容器里得到了同样神秘的标签。 在创建新选项卡之前,我还尝试通过以下方式删除所有选项卡:

for (var i = number - 1; i >= 0; i--) {
        alert('removing ' + i);
        $('#tabs').tabs('remove', i);
        alert('removed ' + i);
    }
这个循环似乎可以识别非神秘的标签,但却看不到神秘的标签

因此,如果我添加1个选项卡,将创建2个 我通过循环从选项卡列表中删除所有。。它标识了1。。。神秘的div不会被删除

如果我去重新添加,请说。。再创建2个选项卡,4个。 当我把它们拿走的时候。。显示的2个被删除,很好。。。但神秘女主角却没有


显示和功能都很好。。除此之外,我还有一个不断扩大的神秘隐藏div的容器。。在页面上垂直扩展选项卡。

请包含更多代码,包括启动选项卡的部分。
for (var i = number - 1; i >= 0; i--) {
        alert('removing ' + i);
        $('#tabs').tabs('remove', i);
        alert('removed ' + i);
    }