Как обернуть <ul>в другой <ul>? - PullRequest
1 голос
/ 07 декабря 2010

У меня есть неупорядоченный список, который я хотел бы обернуть внутри другого неупорядоченного списка в jQuery, используя следующий код:

$('ul.innerlist').prepend('<ul><li>');
$('ul.innerlist').append('</li></ul>');

Однако вместо первой строки, создающей открывающие теги, и второй, создающей закрывающие теги (и обертывающие .innerlist), появляется первая строка, в которой создаются открытые и закрывающие теги, в результате чего

<ul>
  <li></li>
</ul>
<ul class="innerlist">
  <li></li>
</ul>

Вместо этого:

<ul>
  <li>
    <ul class="innerlist">
      <li></li>
    </ul>
  </li>
</ul>

Ответы [ 3 ]

4 голосов
/ 07 декабря 2010

Используется метод jQuery wrap() , чтобы обернуть выбранные элементы предоставленными вами элементами.

Пример: http://jsfiddle.net/patrick_dw/bD8LQ/

$('ul.innerlist').wrap('<ul><li></li></ul>');
2 голосов
/ 07 декабря 2010
0 голосов
/ 07 декабря 2010

попробуйте следующее:

$('ul.innerlist').each(function(i,v){v=$('<ul><li></li></ul>').append(v);});

или wrap.

...