2015-12-15 47 views
0

我正在使用jquery-ui選項卡插件。以角度動態加載jquery選項卡UI

我有是我加載上一個行點擊選項卡(在HTML表),因此突出部的長度可以在每一行用戶點擊動態並且還我使用角指令

在HTML的標籤內置麻煩

這是怎麼了創建角

    <div class="modal-body"> 
        <div id='tabs'> 
         <ul > 
          <li ng-repeat="row in tabs.row"> 
           <a href="#tabs-{{$index +2}}">{{row.Tab}}</a> 
          </li> 
         </ul> 
         <div ng-repeat="row in tabs.row" id="tabs-{{$index + 2}}"> 
          {{row.Tab}} 
         </div> 
        </div> 
       </div> 

而且我是一個模態窗口的標籤,麻煩的是$(「#tabs」).tabs();功能不NG-重複同步我等待它時,我的模型被加載,然後調用它,像這樣

jsonData(爲了簡單XML形式)一段時間:

<data> 
     <row> 
      <Tab>General</Tab> 
     </row> 
     <row> 
      <Tab>Locations</Tab> 
     </row> 
     <row> 
      <Tab>Treatment</Tab> 
     </row> 
     <row> 
      <Tab>Training</Tab> 
     </row> 
     <row> 
      <Tab>Facilities</Tab> 
     </row> 
     <row> 
      <Tab>Equipment</Tab> 
     </row> 
     <row> 
      <Tab>Physicians</Tab> 
     </row> 
     <row> 
      <Tab>People</Tab> 
     </row> 
    </data> 

保存數據:

$scope.tabs=jsonData;//save to model 


    r =setTimeout(initTabs,500); //give some time to modal to save data 

     function initTabs(){ 
      $("#tabs").tabs(); 
      console.log('timerCalled'); 
      r=clearTimeout(); 
      } 

現在,這項工作適用於第一次,但任何後續的點擊重置選項卡導致只有一個選項卡,並且是隱晦的選項卡結果。

有沒有一種方法可以做到這一點,我想重新設置#id.tabs()功能添加的類,但尋找更簡單的方法。

+0

請編輯的問題,包括被稱爲$(「#TABS2」)的碼片(); 目前我沒有看到任何初始化或修改tabs.row集合的代碼。 –

+0

由$(#tab).tabs調用的代碼在jquery-ui插件中用於製表符,它基本上採用HTML並向其添加一堆css類 我已經添加了jsonData – Snedden27

回答

0

我想通了,我可以用#selector.destroy()

恢復由#selector.tabs()所作的更改唯一的缺點是我必須找到一種方法,如果我用#selector.tabs與否,一個辦法是:

if(selector.data("ui-tabs")) 

這裏是我重新初始化再次代碼:

    function initTabs(){ 
         if ($("#tabs2").data("ui-tabs")) { 
          $("#tabs2").tabs("destroy"); 
         } 
         $("#tabs2").tabs(); 
         console.log('timer'); 
         r=clearTimeout(); 
        } 
相關問題