REMARQUE : Cette solution ne fonctionne que pour les versions de Bootstrap antérieures à la version 3. Pour une réponse à Bootstrap 3, reportez-vous à celui-ci par l'utilisateur2612497 .
Ce que vous voulez faire, c'est :
$('#modalElement').on('hidden', function(){
$(this).data('modal', null);
});
qui fera en sorte que la modale s'initialise à chaque fois qu'elle est affichée. Ainsi, si vous utilisez un contenu distant pour le charger dans le div ou autre, cela se reproduira à chaque fois que la modale sera ouverte. Vous détruisez simplement l'instance de la modale à chaque fois qu'elle est masquée.
Ou lorsque vous voulez déclencher la destruction de l'élément (au cas où ce ne serait pas le cas à chaque fois que vous le cachez), il vous suffit d'appeler la ligne du milieu :
$('#modalElement').data('modal', null);
Twitter bootstrap recherche son instance dans l'attribut data, si une instance existe, il la bascule simplement, si une instance n'existe pas, il en crée une nouvelle.
J'espère que cela vous aidera.