2012-09-13 41 views
0

有人能告訴我爲什麼這款手風琴不起作用嗎?動態創建的手風琴無法正常工作。爲什麼?

AJAX調用工作正常,和手風琴DIV獲取具有相同的結構accordion2 DIV創建

的DIV被飾以適當的類(這是有檢查手風琴正在努力!):

<div id=​"accordion" class=​"ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role=​"tablist">​ 

但是就這一點而言。動態創建的內容都不會被觸及。而div只是像正常渲染(即沒有格式化,只是鏈接和文本交替,而不是手風琴!)

正如你所看到的,我試着將呼叫散佈到整個手風琴(),但沒有無濟於事。

這顯然是與條目動態創建的事實有關。但是使用谷歌搜索似乎發現其他人使用類似的設置正常。

PS我很累,很笨,所以它可能是一些愚蠢的東西!

<script> 
     $(document).ready(function() { 

      $("#accordion").accordion({ 
       header: "h3" 
      }); 

      $.ajax({ 
       type: "GET", 
       url: "/api/blog", 
       data: "{}", 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: function(blogs) { 
        for (var i in blogs) { 
         $('#accordion').append(
          $('<div/>').append(
           $('<h3></h3>').append(
            $('<a href="#"/>').append(
             blogs[i].Title 
            ) 
           ) 
          ).append(
           $("<div/>").append(
            blogs[i].Body 
           ) 
          ) 
         ); 
        } 
        $("#accordion").accordion({ 
         header: "h3" 
        }); 
       } 
      }); 
      $("#accordion").accordion({ 
       header: "h3" 
      }); 
      $("#accordion2").accordion({ 
       header: "h3" 
      }); 
     }); 
    </script> 
</head> 
    <body> 
    <div id="accordion"></div> 
    <div id="accordion2"> 
      <div> 
       <h3><a href="#">First</a></h3> 
       <div>Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.</div> 
      </div> 
      <div> 
       <h3><a href="#">Second</a></h3> 
       <div>Phasellus mattis tincidunt nibh.</div> 
      </div> 
      <div> 
       <h3><a href="#">Third</a></h3> 
       <div>Nam dui erat, auctor a, dignissim quis.</div> 
      </div> 
     </div> 
    </body> 
</html> 

回答

0

一個初始化你的手風琴2分太多次 儘量去除其中的兩個:

$("#accordion").accordion({ 
       header: "h3" 
      }); 

但保持初始化是AJAX功能內使內容填充它初始化之前手風琴。

+0

我只是開始分散他們,因爲它不工作。我從來沒有想到多次通話會把它搞砸。您的建議一定是我沒有嘗試的唯一配置!上帝,多麼尷尬。我不願意問我因爲我知道這將是一個DOH!大聲笑。它正在工作。乾杯! –

+0

先生,非常歡迎您!我很高興這是爲你工作。 – kingkode