2012-12-11 4 views
24

これは私のjqueryのコードJquery:新しいコンテンツを追加する前に要素を消去するにはどうすればよいですか?

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

初めてです、それだけで正常に動作します。 PopUpProductDetails.aspxページの内容を表示します。しかし、その後、もう一度クリックすると、同じコンテンツが2倍になります。新しいコンテンツを追加する前に、ダイアログの要素を最初にクリアする必要があるという問題があると思います。

どうすればよいですか?

答えて

46

.append()は、既存のhtml文字列の末尾にhtmlを追加します。.html()を使用して、現在内部にあるものを#dialogに置き換えます。関数の内部

+4

.htmlを(「」)でいっぱいには私のために働きました。 – Jude

+3

注: 'append()'はHTMLを含む文字列だけでなく、 '.html()'はHTMLを含む文字列でのみ動作します。 –

15

最初のダイアログをオフにして、コンテンツ

$.ajax({ 
    url: "PopUpProductDetails.aspx", 
      cache: false 
    }).done(function (html) { 
    $("#dialog").html(""); 
    $("#dialog").html(html); 
}); 
関連する問題