2013-02-08 119 views
0

創建標籤使用jQuery:爲什麼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() 

它創建標籤的元素,但不告訴他們

有什麼問題呢?

+0

爲什麼您需要做這種事情?是否在調整大小時刷新標籤內容? – Mordhak 2013-02-08 14:59:24

回答

1

jQueryUI在創建UI組件時向標記添加了一大堆數據。我的猜測是,它正在絆倒以前的UI數據,而不是正確地重新創建它。要修復它,當您重新繪製時會破壞舊選項卡數據,如下所示:

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