2017-03-11 47 views
1

我有一個動態選項卡面板,每當用戶點擊添加按鈕它會生成一個新的選項卡。所以我需要增加選項卡的ID然後加載數據。 我有一些使用jQuery UI這樣我如何追加jquery與父div具有動態編號

$("button#add-tab").click(function(e) { 
     e.preventDefault(); 

     var num_tabs = $("div#tabSequence ul li").length + 1; 

     var tpl = $('#tabSeq').html(); 

     $("div#tabSequence ul").append(
      "<li><a data-toggle='tab' href='#tab" + num_tabs + "' >#" + num_tabs + "</a></li>" 
     ); 
     $("div#tabContent").append(
      "<div class='tab-pane' id='tab" + num_tabs + "'>" + tpl + "</div>" 

     ); 

,但我將不得不使用jQuery的.load()API,所以我不認爲這會工作:

$("div#tabContent").append(
       "<div class='tab-pane' id='tab" + num_tabs + "'>" + tpl + "</div>" 

,而是試圖做這樣的事情沒有成功:

$("div#tabContent").append(
      $('div .tab-pane #tab" + num_tabs + "').load("sequenceTemplate.html") 
     ); 

如何使一個jQuery從另一個文件,NUM_TABS的ID創建潛水然後負載()一個div? 其中所有SequenceTemplate.html具有是一個單一的div來加載動態

+0

' 'DIV .TAB窗格#tab 「+ NUM_TABS +」''是錯誤。應該是'「DIV .TAB窗格#tab」 + num_tabs' –

+0

涼爽的感謝無法找到如何使用jQuery的裏面一個變種正確 –

+0

未捕獲的錯誤:語法錯誤,無法識別的表達式:#DIV標籤「+ NUM_TABS +」 –

回答

1

$("#add-tab").click(function(e) { 
 
    e.preventDefault(); 
 

 
    var num_tabs = $("#tabSequence ul li").length + 1; 
 

 
    $("<li/>", { 
 
    html: "<a>#" + num_tabs + "</a>", 
 
    appendTo: "#tabSequence ul" 
 
    }); 
 

 
    $("<div/>", { 
 
    class : "tab-pane", 
 
    appendTo : "#tabContent", 
 
    load : "http://output.jsbin.com/kivige/1.js" //you use: "sequenceTemplate.html" 
 
    }); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<button id="add-tab">+ Add</button> 
 
<div id="tabSequence"><ul></ul></div> 
 
<div id="tabContent"></div>

jsBin example

+0

哇,你太棒了!非常感謝 –

+0

@MichaelDaSilva歡迎您 –