为什么隐藏jquery标签?

时间:2013-02-08 14:43:47

标签: javascript jquery jquery-ui jquery-ui-tabs

我用jQuery创建标签:

HTML:

<div id="tabs">

    <ul id="tab">
           <li>
             <a href="#t1">Tab 1</a>
           </li>
           <li>
             <a href="#t2">Tab 2</a>
           </li>
    </ul>

    <div id="tab-contents">
      <div id="t1">aaaaaaaaaa</div>
      <div id="t2">bbbbbbbbbb</div>
    </div>

</div>

JS:

$("#tabs").tabs()

我将标签清空为

var tab = $("#tab").html()
var tabCont = $("#tab-contents").html()
$("#tab").empty()
$("#tab-contents").empty()

并尝试重新绘制它:

$("#tab").html(tab )
$("#tab-contents").html(tabCont )
$("#tabs").tabs()

它会创建标签的元素,但不显示它们

有什么问题?

1 个答案:

答案 0 :(得分:1)

jQueryUI在创建UI组件时会向标记添加大量数据。我的猜测是,它正在绊倒之前的UI数据,而不是正确地重新创建它。要修复它,请在重新绘制时销毁旧标签数据:

$("#tabs").tabs( "destroy" );
$("#tab").html(tab )
$("#tab-contents").html(tabCont )
$("#tabs").tabs()