[問題] jQuery 的 wrap 如何加入 span 標籤?

看板Ajax作者 (天氣放晴吧…)時間15年前 (2010/11/12 12:06), 編輯推噓3(305)
留言8則, 4人參與, 最新討論串1/2 (看更多)
目前有 ul 如下: <ul id="nav"> <li><a href="#">Item 1</a> <ul> <li>Item 1-1</li> <li>Item 1-2</li> <li>Item 1-3 <ul> <li>Item 1-3-1</li> <li>Item 1-3-2</li> </ul> </li> <li>Item 1-4</li> <li>Item 1-5</li> </ul> </li> <ul> 我使用: $('#nav ul').parent().each(function () { $(this).wrapInner('<span class="floder"></span>'); 結果(不是我想要的): <UL id="nav"> <LI> <SPAN class="floder" jQuery1289533733233="2"> <A href="">Item 1</A> <UL> <LI>Item 1-1 </LI> <LI>Item 1-2 </LI> <LI><SPAN class="floder" jQuery1289533733233="4">Item 1-3 <UL> <LI>Item 1-3-1 </LI> <LI>Item 1-3-2 </LI> </UL> </SPAN> </LI> </SPAN> </LI> <LI>Item 1-4 </LI> <LI>Item 1-5 </LI> </UL> 請問要如何寫才能變成下方所示: <UL id="nav"> <LI> <SPAN class="floder" jQuery1289533733233="2"> <A href="">Item 1</A> </SPAN> <UL> <LI>Item 1-1 </LI> <LI>Item 1-2 </LI> <LI><SPAN class="floder" jQuery1289533733233="4">Item 1-3 </SPAN> <UL> <LI>Item 1-3-1 </LI> <LI>Item 1-3-2 </LI> </UL> </LI> </LI> <LI>Item 1-4 </LI> <LI>Item 1-5 </LI> </UL> 若知道的請教我一下,謝謝。 -- ----- 就算是friend 最後還是會end 就算是believe 中間還是藏lie 就算是lover 最終還是會over 就算是fuck 起初也要有fu 就算是forget 至少曾經有get -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.192.224

11/12 12:59, , 1F
ul.parent().find("a").wrap 試試
11/12 12:59, 1F

11/12 13:07, , 2F
我好像誤會了樓主的意思,無視上面
11/12 13:07, 2F

11/12 14:19, , 3F
.children(":first").wrap 這樣呢?
11/12 14:19, 3F

11/17 09:01, , 4F
to LPH66: 你的方法有 children 標籤才有用,如果 li 後面接
11/17 09:01, 4F

11/17 09:02, , 5F
的文字沒有標籤包著就會包到 ul 標籤
11/17 09:02, 5F

11/18 13:39, , 6F
我的解法是,先標記子層有ul的li(給class之類的)
11/18 13:39, 6F

11/18 13:40, , 7F
然後把該ul存在一個變數並移除,接著unwrap該li
11/18 13:40, 7F

11/18 13:40, , 8F
最後append回給該li
11/18 13:40, 8F
文章代碼(AID): #1CtBqzqY (Ajax)
文章代碼(AID): #1CtBqzqY (Ajax)