Recosh
@Recosh
Программист студент

Как перехватить submit всех форм на странице, включая динамические?

Приветствую. Есть код:
$('form').submit(function(){
	var form_data = $(this).serializeArray();
	
	form_data.push({name:'cbk_sites_conf_id', value:cbk_sites_conf_id});
	form_data.push({name:'site', value:cbk_site});
	form_data.push({name:'pre_referrer', value:localStorage.first_refferer});

	$.post('//example.com/widget/cbk_vizov', form_data);

    //console.log(form_data);
    //return false;
});


Который перехватывает все формы. Но если форма была создана динамически на странице, на неё не вешается событие.
Пробовал изменить код так:

setTimeout(function(){
	console.log('inited');

	$('html').on( 'submit', 'form', function () {
		console.log(this);

		var form_data = $(this).serializeArray();
		
		form_data.push({name:'cbk_sites_conf_id', value:cbk_sites_conf_id});
		form_data.push({name:'site', value:cbk_site});
		form_data.push({name:'pre_referrer', value:localStorage.first_refferer});

		$.post('//example.com/widget/cbk_vizov', form_data);
	});
},3000);

И вообще не работает XD Как правильно перехватывать все формы на странице, даже есди они были созданы динамически (рисуются в модальных окнах)?
  • Вопрос задан
  • 1932 просмотра
Пригласить эксперта
Ответы на вопрос 1
uDenX
@uDenX
PHP Developer
$(document).on('submit', 'form', function () {
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы