Cuando falla una operación de ajax, creo un nuevo div con los errores y luego lo muestro como un cuadro de diálogo. Cuando el diálogo está cerrado, me gustaría destruir y eliminar completamente el div nuevamente. ¿Cómo puedo hacer esto? Mi código es algo como esto en la actualidadjquery: Cómo eliminar completamente un cuadro de diálogo al cerrar
$('<div>We failed</div>')
.dialog(
{
title: 'Error',
close: function(event, ui)
{
$(this).destroy().remove();
}
});
Cuando corro de esta caja de diálogo se muestra correctamente, pero cuando lo cierro la ventana de diálogo es aún visible en el html (usando FireBug). ¿Que me estoy perdiendo aqui? Algo que he olvidado?
Actualización: Acaba de notar que mi código me da un error en la consola de Firebug.
$ (this) .destroy no es una función
Cualquier persona capaz de ayudarme?
Actualización: En su lugar, solo $(this).remove()
, el elemento se elimina del html. ¿Pero está completamente eliminado del DOM? ¿O de alguna manera necesito llamar a esa función de destrucción primero también?
Oooooh. Derecha ... * Facepalm * ¡¡Gracias !! – Svish
Tenga en cuenta que '.destroy' elimina el marcado externo agregado por el marco de la interfaz de usuario (barra de título, botón de cierre, barra de tamaño, etc.). Quizás esto es lo que quisiste decir con _host_. –
antes de usar esto con FF y con Firebug abierto. Se bloqueará. https://code.google.com/p/fbug/issues/detail?id=6290 Pasé horas ... para ver qué pasaba con mi código. –