1. Для очистки содержимого модального окна при его вызове с использованием AJAX, вы можете использовать следующий код:
```javascript
$('#myModal').on('show.bs.modal', function (e) {
var modal = $(this);
modal.find('.modal-body').html('');
$.ajax({
url: 'yourUrl',
type: 'GET',
success: function(response) {
modal.find('.modal-body').html(response);
},
error: function() {
modal.find('.modal-body').html('Error occurred while loading data');
}
});
});
```
2. Для предотвращения накопления данных при вызове модального окна несколько раз подряд, вы можете использовать флаг, который будет отслеживать, был ли уже загружен контент или нет. Например:
```javascript
var isContentLoaded = false;
$('#myModal').on('show.bs.modal', function (e) {
var modal = $(this);
if (!isContentLoaded) {
$.ajax({
url: 'yourUrl',
type: 'GET',
success: function(response) {
modal.find('.modal-body').html(response);
isContentLoaded = true;
},
error: function() {
modal.find('.modal-body').html('Error occurred while loading data');
}
});
}
});
```
Это поможет избежать дублирования данных из базы данных в форме при вызове модального окна несколько раз.