Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.08.2013, 17:15
Аватар для romikz
Интересующийся
Отправить личное сообщение для romikz Посмотреть профиль Найти все сообщения от romikz
 
Регистрация: 02.07.2013
Сообщений: 10

Проблема с AJAX
В общем проблема такова:
Начал я писать вход для своего проекта. Прикрутил формы кнопку итд.
Начал осуществлять отправку формы без перезагрузки страницы и вот тут стопор. 5 дней уже мучаюсь! Проверил на двух других отдельных страницах все работает, а на этой нет(
вот код формы:
<form method="post" id="form" name="form" action="login.php>
		<div style="width:500px; position:left; padding: 10px; 0px 5px">
		<div id="ajax"></div>
		<table>
			<tbody>
				<tr>
					<td>
						<a>Логин:</a>
					</td>
					<td>
						<input type="text" size="30" placeholder="Введите логин..." id="login" name="login">
					</td>
					<td>
						<a style="margin-left: 10px; cursor:pointer;" class="poplight" href="/mytable/mytale.php?act=support">Забыли логин?</a>
					</td>
				</tr>
				<tr>
					<td>
						<a>Пароль:</a>
					</td>
					<td>
						<input type="password" size="30" placeholder="Введите пароль..." id="password" name="password">
					</td>
					<td>
						<a style="margin-left: 10px; cursor:pointer;" class="poplight" href="/mytable/mytale.php?act=support">Забыли пароль?</a>
					</td>
				</tr>
			</tbody>
		</table>
	</div>
	<table>
	<tbody>
		<tr>
		<td><input type="submit" class="btn" name="form_btn" OnClick="too()" value="Войти в панель" style="font-size: 20px; padding: 5px; text-align:start; position:left;" ></td>
		<td><span class="wrap">
		<a href="#" title="ВКонтакте" class="vkontakte"></a>
		<a href="#" title="Одноклассники" class="odnoklassniki"></a>
		<a href="#" title="Facebook" class="facebook"></a>
		<a href="#" title="Twitter" class="twitter"></a>
		<a href="#" title="Мой Мир@Mail.Ru" class="moimir"></a>
		<a href="#" title="Google+" class="google"></a>
		<a href="#" title="Яндекс" class="yandex"></a>
		</span>
	</td>
</tbody>
</table>
	</form>

к этой странице я подключил файл js вот он:
function getXmlHttp(){
    var xmlhttp;
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
    }
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
      xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
  }
  function too() {
    var a = document.getElementById("login").value;
    var b = document.getElementById("password").value;
    var xmlhttp = getXmlHttp();
    xmlhttp.open('POST', '/mytable/login/login.php', true);
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlhttp.send("login=" + encodeURIComponent(a) + "&password=" + encodeURIComponent(b));
    xmlhttp.onreadystatechange = function() {
      if (xmlhttp.readyState == 4) {
        if(xmlhttp.status == 200) {
          document.getElementById("ajax").innerHTML = xmlhttp.responseText;
        }
      }
    };
  }

И собственно библиотеку, вот:
<script language="JavaScript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
	</script>


По нажатии кнопки отправки происходит простое перенаправление на файл обработчик(как будто скрипта нету).
в JS я не силен если что не судите строго.
Помогите заранее спасибо)
Ответить с цитированием
  #2 (permalink)  
Старый 10.08.2013, 18:07
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от romikz
По нажатии кнопки отправки происходит простое перенаправление на файл обработчик(как будто скрипта нету).
А с чего ты взял что твой скрипт должен предотвратить действие по умолчанию (сабмит формы)? Где, в каком месте такое у тебя в скрипте?
Ответить с цитированием
  #3 (permalink)  
Старый 10.08.2013, 18:08
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

И еще. Нафига подключаешь jQuery, но при этом даже не пользуешься функциями из нее? Мертвый груз так сказать.
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2013, 09:54
Аватар для romikz
Интересующийся
Отправить личное сообщение для romikz Посмотреть профиль Найти все сообщения от romikz
 
Регистрация: 02.07.2013
Сообщений: 10

Сообщение от danik.js
По нажатии кнопки отправки происходит простое перенаправление на файл обработчик(как будто скрипта нету).
А с чего ты взял что твой скрипт должен предотвратить действие по умолчанию (сабмит формы)? Где, в каком месте такое у тебя в скрипте?
Где в каком месте я показать немогу т.к js можно сказать не знаю. Но по нажатии submit должна выводиться работа php скрипта, а этого не происходит почему? Ведь на других страницах этот же скрипт работал.
Ответить с цитированием
  #5 (permalink)  
Старый 11.08.2013, 10:24
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от romikz
Ведь на других страницах этот же скрипт работал.
Не мог он работать. Потому что он не предотвращает действие по умолчанию. А для нажатия кнопки submit это действие - отправка формы.
Форма отсылается а выполнение скриптов останавливается.

http://javascript.ru/tutorial/events...po-umolchaniyu
Если использовать jQuery, то все еще проще.
Ответить с цитированием
  #6 (permalink)  
Старый 11.08.2013, 11:26
Аватар для romikz
Интересующийся
Отправить личное сообщение для romikz Посмотреть профиль Найти все сообщения от romikz
 
Регистрация: 02.07.2013
Сообщений: 10

Ну почему не может? Вот архив с примером.
Вложения:
Тип файла: zip Javascript-form-sender.zip (1.3 Кб, 0 просмотров)
Ответить с цитированием
  #7 (permalink)  
Старый 11.08.2013, 11:32
Аватар для romikz
Интересующийся
Отправить личное сообщение для romikz Посмотреть профиль Найти все сообщения от romikz
 
Регистрация: 02.07.2013
Сообщений: 10

Прошу прощения, нашел ошибку) у меня было type="sibmit" а в примере type="button". И у меня появился еще один вопрос
как добавить в скрипт статус ожидания? Чтоб пока выполнялся php скрипт была какая-нибудь надпись или gif-ка.

Последний раз редактировалось romikz, 11.08.2013 в 11:35.
Ответить с цитированием
  #8 (permalink)  
Старый 11.08.2013, 12:21
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Перед запросом отображаешь гифку/надпись. По приходу ответа от сервера - скрываешь/удаляешь её.
Ответить с цитированием
  #9 (permalink)  
Старый 12.08.2013, 11:03
Аватар для romikz
Интересующийся
Отправить личное сообщение для romikz Посмотреть профиль Найти все сообщения от romikz
 
Регистрация: 02.07.2013
Сообщений: 10

Не могли бы вы на примере показать как это осуществить или дать ссылку?
Ответить с цитированием
  #10 (permalink)  
Старый 12.08.2013, 11:30
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Перед запросом:
$('.loading').show()
После запроса:
$('.loading').hide()

HTML:
<div class="loading" style="display:none"></div>
CSS:
.loading{
    /* тут стили, например background:url() */
}
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax чат - проблема useruser AJAX и COMET 15 24.05.2014 21:58
проблема в json & ajax okapo Работа 4 02.05.2013 20:56
Проблема с AJAX Dim@ AJAX и COMET 4 16.09.2012 22:52
ajax чат проблема с записью сообщения в базу данных mysql. Niksik AJAX и COMET 4 15.01.2012 14:04
Проблема с событиями после ajax запроса Mirgorod AJAX и COMET 5 12.06.2010 18:24