2012-12-31 107 views
0

我正在使用jquery ui選項卡來動態創建動態選項卡,該選項卡將在沒有任何內容的情況下啓動。從我可以告訴我的代碼構建一切並將其放在適當的位置,但jquery不會將它們識別爲製表符。我如何才能識別頁面加載後創建的新選項卡?使用動態命名分配動態創建Jquery選項卡

的HTML代碼:

<div class="main"> 
    <div> 
     <button id="new">button</button> 
    </div> 
    <div id="tabs"> 
     <ul> 
      <li><a href="#tabs-1">View1</a></li> 
      <li><a href="#tabs-2">View2</a></li> 
      <li id="createView"><a href="null">Create New</a></li> 
     </ul> 
     <div id="tabs-1"> 
      <p>something on this page</p> 
     </div> 
     <div id="tabs-2"> 
      <div> 
       <p>something else on this page</p> 
      </div> 
     </div> 
    </div> 
</div>​​​​​​​​ 

的JavaScript:

//Tabs functionality 
    $('#tabs').tabs(); 

    //Create new view 


    var tabNum = 3; 

    $('#new').click(function() { 

     $('#tabs ul').append('<li>' + '<a href="' + '#tabs-' + tabNum + '">' + 'newitem' + '</a>' + '</li>'); 
     $('#tabs').append('<div id="' + 'tabs-' + tabNum + '">' + '<div>new</div>' + '</div>'); 
     var NewViewNum = 'tabs-' + tabNum; 
     $(NewViewNum).focus(); 

     tabNum++; 

    });​ 
+0

你說的「不承認他們是標籤」是什麼意思? –

+0

請參閱http://jqueryui.com/tabs/#manipulation –

回答

3

的jQuery UI的標籤有refresh方法,你可以使用per the documentation

嘗試調用:

$("#tabs").tabs("refresh"); 
+0

謝謝!我知道這是一件小事。 – Rob