Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.09.2011, 11:08
Новичок на форуме
Отправить личное сообщение для flame Посмотреть профиль Найти все сообщения от flame
 
Регистрация: 03.11.2010
Сообщений: 6

Определить наличие элемента
Нужна небольшая помощь. Ситуация такая.
Есть кнопка, при нажатии на которую отсылается информация на сервер (AJAX). Ответ приходит в виде блока div, который вставляется в конец тега body. Ответ может быть двух вариантов: <div class="Success"></div> или <div class="Fail"></div>. Так вот, задача в том, чтобы когда появляется блок "Success", нужно перейти на другую страницу.
Пока имею вот такое, некрасивое решение. Подскажите, как по грамотному это переделать.
jQuery("#link").click(function (e) {
		setTimeout(function () {
			if (jQuery(".Success").length) {
				top.location.href='index.php';
			;}
		}, 1000);
Ответить с цитированием
  #2 (permalink)  
Старый 22.09.2011, 11:36
Аватар для kadabrik
Кандидат Javascript-наук
Отправить личное сообщение для kadabrik Посмотреть профиль Найти все сообщения от kadabrik
 
Регистрация: 10.12.2010
Сообщений: 114

У метода $.ajax нужно записать callback функцию в параметр success. Она вызовется после получение данных, и может напрямую с ними работать.
Ответить с цитированием
  #3 (permalink)  
Старый 22.09.2011, 11:50
Новичок на форуме
Отправить личное сообщение для flame Посмотреть профиль Найти все сообщения от flame
 
Регистрация: 03.11.2010
Сообщений: 6

А не подскажите, как проверить на какой кнопке был клик, например с id link_1 или link_2?
Ответить с цитированием
  #4 (permalink)  
Старый 22.09.2011, 12:00
Профессор
Отправить личное сообщение для Триви Посмотреть профиль Найти все сообщения от Триви
 
Регистрация: 23.04.2010
Сообщений: 354

Сообщение от flame Посмотреть сообщение
А не подскажите, как проверить на какой кнопке был клик, например с id link_1 или link_2?
$("#link_1, #link_2").click(function (e) {
if ($(this).id =='link_1') ...
Ответить с цитированием
  #5 (permalink)  
Старый 22.09.2011, 12:55
Новичок на форуме
Отправить личное сообщение для flame Посмотреть профиль Найти все сообщения от flame
 
Регистрация: 03.11.2010
Сообщений: 6

А можно как-то определить без обработчика события для кнопки. Просто есть форма, в ней две кнопки. При нажатии на любую из них форма отправляется. И вот там и надо определить при нажатии на какую кнопку была отправлена форма. Или можно как-то в обработчике события onsubmit формы послать id нажатой кнопки?
Ответить с цитированием
  #6 (permalink)  
Старый 22.09.2011, 13:35
Профессор
Отправить личное сообщение для Триви Посмотреть профиль Найти все сообщения от Триви
 
Регистрация: 23.04.2010
Сообщений: 354

вы требуете невозможного.
для этого существует атрибут name.
если у вас две кнопки, то проверяйте на сервере какая из них была нажата через массив $_POST

<?php
if($_POST['button_1']) ...
if($_POST['button_2']) ...
?>


где button_1 и button_2 значения атрибута name в ваших кнопках.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверить наличие элемента на странице KonstantinK Элементы интерфейса 14 17.11.2013 13:16
Проверка массива на наличие элемента Скриптор Общие вопросы Javascript 16 10.09.2012 18:00
Проверка на наличие дочернего элемента в списке T-sh jQuery 1 08.09.2011 01:47
Наличие элемента. Viral Элементы интерфейса 2 15.07.2011 14:59
Браузер не успевает определить высоту вновь созданного через XMLHttpRequest элемента Lockpickup AJAX и COMET 17 25.04.2011 17:58