Como posso adicionar um elemento após outro?


174

Eu tenho uma certa caixa de texto e quero adicionar uma div depois dela. Eu tentei a .append()função, mas isso apenas adiciona a div no elemento.

Por exemplo, eu tenho:

<input type="text" id="bla" />

e eu quero mudar isso para:

<input type="text" id="bla" /><div id="space"></div>

Respostas:


287

tente usar o after()método:

$('#bla').after('<div id="space"></div>');

Documentação


8
Os métodos .after () e .insertAfter () executam a mesma tarefa.
Rifat

7
Isso está correto, mas depende da maneira como você prefere codificá-lo. Normalmente, eu já selecionava a entrada '#bla' e adicionava o conteúdo extra posteriormente. Puramente minha preferência, porém, não tenho certeza se um dos métodos tem algum benefício de velocidade.
Rowan

37

experimentar

.insertAfter()

aqui

$(content).insertAfter('#bla');

17
Seu código não deve ser mais parecido $('<div id="space"></div>').insertAfter('#bla')ao invés de $('#bla').insertAfter(content);?
Rowan


1

JQuery resolvido: adicionar elemento após outro elemento

<script>
$( "p" ).append( "<strong>Hello</strong>" );
</script>

OU

<script type="text/javascript"> 
jQuery(document).ready(function(){
jQuery ( ".sidebar_cart" ) .append( "<a href='http://#'>Continue Shopping</a>" );
});
</script>

2
Isto está incorreto. Isso acrescenta o elemento ao elemento pai, assim como o OP indicado. Considere ler a pergunta novamente e revisar sua resposta.
Evan Wieland
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.