• Event когда чужой ajax завершил работу, jQuery?

    madMxg
    @madMxg
    Можно попробовать повешать jquery метод ajaxStop() на страницу, если конечно "чужой скрипт" не отправляет AJAX запрос с глобальной опцией false.
    $.ajax({
        ...
        global: false,     // this makes sure ajaxStart is not triggered
        ...
    });

    т.е. вешаем на DOM элемент функцию вида
    $('<dom element>').ajaxStop(function() {
        //AJAX запрос завершился
        //Здесь тело вашей функции
    });

    Подробней почитать можно тут.
    Ответ написан
    Комментировать
  • InnerHTML + Ajax. Проблемы с сабмитом формы?

    $(function(){
    
    	$('#boxcontent').load('ajax/db_table.php',function(){
    		var frm_upd = $('#upd_db');
    		frm_upd.submit(function(){
    			$.ajax({
    				type: frm_upd.attr('method'),
    				url: frm_upd.attr('action'),
    				data: frm_upd.serialize(),
    				success: function (data) {
    					if (data == "ok"){
    						$.gritter.add({
    							text: 'Информация успешно обновлена.'
    						});
    					}else{
    						$.gritter.add({
    							text: 'Ошибка! Информация не обновлена.'
    						});
    					}
    				}
    			});
    			return false;
    		});	
    	});
    	
    });


    Вам лучше первый ajax укоротить до функции load. Отправка подгруженной формы осуществляется внутри load, так как отсутствует в изначальном DOM. Чтобы после отправки мы не переходили на другую страницу, в коце функции submit отправляем submit false;

    Либо использовать, как у вас ajax, js код отвечающий за отправку формы - поместить внутрь success:

    $(function(){
    	
    	$.ajax({
    		url: "ajax/db_table.php",
    		success: function (data) {
    			$('#boxcontent').html(data);
    		
    			var frm_upd = $('#upd_db');
    			frm_upd.submit(function(){
    				$.ajax({
    					type: frm_upd.attr('method'),
    					url: frm_upd.attr('action'),
    					data: frm_upd.serialize(),
    					success: function (data) {
    						if (data == "ok"){
    							$.gritter.add({
    								text: 'Информация успешно обновлена.'
    							});
    						}else{
    							$.gritter.add({
    								text: 'Ошибка! Информация не обновлена.'
    							});
    						}
    					}
    				});
    				return false;
    			});
    		}
    	});
    });
    Ответ написан
    Комментировать