2012-12-11 15 views
24

Questo è il mio codice jQueryJquery: come cancellare un elemento prima di aggiungere nuovi contenuti?

$.ajax({ 
    url: "PopUpProductDetails.aspx", 
      cache: false 
    }).done(function (html) { 
    $("#dialog").append(html); 
}); 

La prima volta, funziona bene. Visualizza il contenuto della pagina PopUpProductDetails.aspx. Ma dopo, se clicco di nuovo, ottengo due volte lo stesso contenuto, e così via. Credo che il problema è che ho bisogno di cancellare la finestra di dialogo prima di aggiungere nuovi contenuti.

Come faccio?

risposta

46

.append() aggiunge html alla fine della stringa html esistente, utilizzare .html() per sostituire ciò che è attualmente all'interno di #dialog.

+4

.html ("") ha lavorato per me. – Jude

+3

Nota: 'append()' funziona con più di semplici stringhe contenenti HTML, mentre '.html()' funziona solo con stringhe contenenti HTML. –

15

All'interno della funzione deselezionare la finestra di dialogo e poi si riempiono con il contenuto

$.ajax({ 
    url: "PopUpProductDetails.aspx", 
      cache: false 
    }).done(function (html) { 
    $("#dialog").html(""); 
    $("#dialog").html(html); 
}); 
Problemi correlati