Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Не закрывается модальное окно. (https://javascript.ru/forum/events/82818-ne-zakryvaetsya-modalnoe-okno.html)

Warwar 11.07.2021 22:23

Не закрывается модальное окно.
 
Здравствуйте! Помогите решить проблему с модальным окном. После отправки сообщения оно появляется (так и нужно) но при нажатии на кнопку(и) закрыть оно не пропадает. В консоли ошибка:

"VM21794:1 Uncaught TypeError: alert_close is not a function
at HTMLDivElement.onclick (VM21794:1)"
alert_close(undefined);return false (Uncaught TypeError: alert_close is not a function)

Скрипт:
$(document).ready(function() {

	$("#form").submit(function() {
		$.ajax({
			type: "POST",
			url: "rest.php",
			data: $(this).serialize()
		})
        .done(function() {
			function alert(content,afterFunction){
$('<div class="alertm_overlay"></div>').appendTo('body');
$('<div class="alertm_all"><a href="#" onclick="alert_close('+afterFunction+'); return false" class="alertm_close">x</a><div class="alertm_wrapper">'+content+'</div><div class="alertm_but" onclick="alert_close('+afterFunction+'); return false">ОК</div></div>').appendTo('body');
$(".alertm_overlay, .alertm_all").fadeIn("slow");
$('.alertm_all').css('margin-top', (-1)*($('.alertm_all').height())+'px');
}
function alert_close(afterFunctionClouse){
$(".alertm_overlay, .alertm_all").remove();
afterFunctionClouse;
}

$(document).ready(function(){
alert('СПАСИБО');
}); 
			
		});
		return false;

    });
	
});

рони 11.07.2021 22:47

Warwar,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

рони 11.07.2021 22:48

Цитата:

Сообщение от Warwar
function alert_close

это надо сделать доступным глобально.

Warwar 12.07.2021 10:21

Цитата:

Сообщение от рони (Сообщение 538576)
это надо сделать доступным глобально.

Спасибо!
Еще вопрос, а как это сделать?

рони 12.07.2021 11:12

Цитата:

Сообщение от Warwar
а как это сделать?

строки 16 - 19 перенести в строку ноль

Warwar 12.07.2021 17:58

Цитата:

Сообщение от рони (Сообщение 538591)
строки 16 - 19 перенести в строку ноль

СПАСИБО!
Все получилось!:dance:


Часовой пояс GMT +3, время: 07:15.