2010-10-12 26 views
1

我使用這個插件根據該link text 3一跌... 3:非手風琴(標準擴展菜單)和每個李看起來像這樣手風琴不符合我的所有數據的工作

<li> 
<a href="#">Burswood Dome - Burswood Wa, Australia</a> 
     2010-10-04 
     <ul class="acitem"> 
       <br><input id="yes_song1" name="yes" type="radio" value="song[1]" /> 
       Yes 
       <br><input id="no_song1" name="no" type="radio" value="song[1]" /> 
       No 
       <li>master of puppets</li> 
</ul> 
</li> 

任何理由手風琴不起作用,因爲如果我只用文本就可以正常工作......

回答

2

您需要確保LI是UL元素的唯一孩子。此外,即使您不應將br元素作爲ul的直接子元素,您也應該編寫<br />而不是<br>

+0

你什麼意思?我是否有太多的HTML有 – Trace 2010-10-12 21:39:06

+0

一個'UL'元素是無序列表中,瀏覽器期望在它們下面有'LI'(列表項),當你在'UL'下面直接放置一個'BR'時,瀏覽器可能會向你發出錯誤信息。打破可能與th有關是。讓你的'UL'適當的HTML,我相信它會弄清楚。 – treeface 2010-10-12 21:44:05

+0

同意 - 'ul'和'ol'標籤**必須包含'li'標籤和** **''li'標籤,作爲他們的孩子。不允許使用'div','br','span'或任何其他標籤(或標準文本)。這些必須位於'li'標籤內。 – ClarkeyBoy 2010-10-12 21:52:17

2

爲什麼腳本被打破的原因是因爲http://jqueryui.com/demos/accordion/

你的手風琴容器的標記需要對標題和內容面板:

所以應該交替的元素,一個是標題,一個用於內容。我的是一對的div,用CSS類名accHeader和accContent,像這樣的:

<div class='accHeader'>... blah blah blah ... </div> 
<div class='accContent'> ... blah blah ... </div> 
<div class='accHeader'>... blah blah blah ... </div> 
<div class='accContent'> ... blah blah ... </div> 
<div class='accHeader'>... blah blah blah ... </div> 
<div class='accContent'> ... blah blah ... </div> 

我的手風琴作品就好。另外,請記住,您可以在div內嵌入任何您想要的內容。包括<br /> s

+0

而不是編輯,我會爲未來的讀者添加評論的好處:我剛剛意識到他有最初標記爲「jquery-accordion」的問題,但他使用的是第三方手風琴控件,而不是jquery-ui控件,這就是我把這兩個意思聯繫在一起。所以我的回答不是100%正確的。謝謝。 – jcolebrand 2010-10-25 15:40:37

0

我有同樣的問題,但在我的情況下,這是因爲我使用了通常的'腳本管理器',而不是使用「工具包腳本管理器」,嘗試交換,它可能工作正常。正確的「工具包腳本管理器」是「腳本管理器」

希望超我能提供幫助。