Necesito eliminar elementos div que se cargan dinámicamente entre dos elementos div estáticos.
HTML
<div id="defaultFirst"> </div> .. .. .. <div id="defaultLast"> </div> Hay algunos elementos div que se cargan entre esos dos elementos div estáticos. Ahora necesito eliminarlos antes de agregar algunos otros elementos.
Intenté usar $('#defaultFirst').nextAll('div').remove() pero eso eliminó el elemento #defaultLast también.
Sé que puedo obtener los identificadores del div dinámico y eliminarlos. Pero necesito saber si hay alguna forma más sencilla de eliminar esos elementos div dinámicos.
Use nextUntil() en lugar de nextAll() y pase un selector que seleccione su elemento #defaultLast :
$('#defaultFirst').nextUntil('#defaultLast').remove();
.nextUntil( [selector ] [, filter ] )Descripción: Obtener todos los hermanos siguientes de cada elemento hasta, pero sin incluir, el elemento que coincide con el selector, el nodo DOM o el objeto jQuery pasado.
Si tiene elementos que no son elementos div entre esos dos que no desea eliminar, puede eliminar específicamente solo elementos div pasando un selector a su llamada remove() :
$('#defaultFirst').nextUntil('#defaultLast').remove('div');Recomendaría llegar a la causa de por qué aparecen los divs en primer lugar en lugar de piratear de esta manera. Sin embargo, si tiene que hacerlo, lo siguiente debería funcionar
$('#defaultFirst').nextAll('div').not('#defaultLast').remove();Ejemplo de Codepen - http://codepen.io/webknit/pen/ZeZXdQ