2013-07-28 136 views
0

我想創建一個jQuery UI對話框,並在其中嵌入jquery-ui選項卡式構造。這是我的功能:JQuery UI對話框與模板字符串中的選項卡

<script type="text/javascript" language="javascript" charset="utf-8"> 

function createDialog(title, text) { 
var tstr="<div id='tabs' >" 
+"<ul>" 
+"<li><a href='#tabs-1'>A</a></li>" 
+"<li><a href='#tabs-2'>B</a></li>" 
+"</ul>" 
+"<div id='tabs-1'>" 
+"A Stuff Goes Here" 
+"</div>" 
+"<div id='tabs-2'>B Stuff Goes Here" 
+"</div>" 
+"</div>" 
return $("<div class='dialog' title='" + title + "'><p>" + tstr + "</p></div>") 
.dialog({ 
resizable:true, 
height:480, 
width:650, 
modal:true, 
buttons: { 
     "Dismiss": function() { 
      $(this).dialog("close"); 
     } 
    } 
}); 
tabs.tabs(); 

} 

</script> 

調用該函數時出現對話框,但選項卡被格式化爲鏈接。任何人都可以給我一個關於什麼是錯的想法嗎?請注意,該函數正在從JQuery數據表回調中調用。

Example

回答

1
  1. 「標籤」,因爲你創造了你的回報一個對話框,你需要鏈對話框通話的選項卡呼叫在您的例子
  2. 定義。

如: ...

return $("<div class='dialog' title='" + title + "'><p>" + tstr + "</p></div>") 
    .dialog({ 
    resizable:true, 
    height:480, 
    width:650, 
    modal:true, 
    buttons: { 
      "Dismiss": function() { 
       $(this).dialog("close"); 
      } 
     } 
    }).tabs(); 

你是在正確的道路上,但因爲「選項卡()」,它永遠不會執行返回後調用。另外,由於「tabs」變量沒有定義,你會得到一個參考錯誤。

+0

確實解決了這個問題。我還添加了標籤ID - 這是一個剪切和粘貼錯誤。非常感謝你。 – jmf1205

相關問題