Como passar toda li da lista unorder para Div exceto li clicado

votos
-2

Tenho item da lista

<ul class=menu>

  <li> LIST 1 </li>
  <li> LIST 2 </li>
  <li> LIST 3 </li>

</ul>

<div class=append_li></div>

Então, acho que quando eu clico no <li>LIST 1</li>restante li com etiquetas deve se anexado na tag div, mas não clicado li, assim como fazer isso usando jQuery

Publicado 19/09/2018 em 13:21
fonte usuário
Em outras línguas...                            


2 respostas

votos
0

Você pode usar como esta:

$('.menu li').click(function (){
   $(this).siblings('li').clone().appendTo('.append_li')
});

Ou assim

$('.menu li').click(function (){
   $(this).siblings('li').appendTo('.append_li')
});
Respondeu 20/09/2018 em 05:59
fonte usuário

votos
0

Você pode usar jQuery .clone()para esse fim:

$(document).ready(function(){
  $('li').click(function(){
     //$('.append_li').html('');
     $('.append_li').html($('li').not($(this)).clone());
  });
});

trecho de trabalho:

$(document).ready(function(){
  $('li').click(function(){
     //$('.append_li').html('');
     $('.append_li').html($('li').not($(this)).clone());
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="menu">

<li> LIST 1 </li>
<li> LIST 2 </li>
<li> LIST 3 </li>

</ul>

<div class="append_li"></div>

Nota: Se você quiser substituir os dados dentro<div>, em vez de acrescentar , em seguida, adicione abaixo da linha em seu código antes de.clone()linha

$('.append_li').html('');

Importante: - O que cada-um fala HTML sobre inválida, você pode superar para esse problema fazendo o código abaixo :

$(document).ready(function(){
    $('li').click(function(){
   $('.append_li').html('');
   $('.append_li').html($("ul.menu").clone().find('li:eq('+ $(this).index() +')').remove().end());
  })
})

Saída: http://jsfiddle.net/0mz9s8ng/

Respondeu 19/09/2018 em 13:31
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more