Javascript.RU

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

многоразовое приминение ajax в цыкле
Незнаю правильно ли назвал тему, суть вопроса заключается в том что я создаю цикл и вывожу в нем формы с инпутом и кнопкой для подтверждения, нужно отправлять данные с каждой формы, получать и выводить ответ, делаю отправку данных по примеру описанному здесь:
Код:
http://javascript.ru/ajax/intro#chto-takoe-ajax-primer-realizacii
получается так что на какую бы я кнопку не нажал всеравно ответ меняется и выводится поле для первой формы. Как мне максимально правильно выводить данные в поле для каждой формы ?
Ответить с цитированием
  #2 (permalink)  
Старый 06.04.2010, 22:34
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

http://javascript.ru/basic/closure#p...-ispolzovaniya
Ответить с цитированием
  #3 (permalink)  
Старый 07.04.2010, 00:58
Интересующийся
Отправить личное сообщение для lol4eg Посмотреть профиль Найти все сообщения от lol4eg
 
Регистрация: 06.04.2010
Сообщений: 17

Сообщение от Gvozd Посмотреть сообщение
http://javascript.ru/basic/closure#p...-ispolzovaniya
не понятно как это использовать в моем случае, формы вместе с дивом я генерирую в в своем php файле примерно так:
for ($i=0; $i < 2;$i++) {
 echo '<br /><div align="center" style="border: 1px dotted #AAA;padding:2px">
        Введите данные:
        <input type="text" id="data" />
        <input value="Отправить" onclick="submit()" type="button" />
        <div id="submit_status">Здесь будет ответ сервера</div>
        </div>';
}

единственное что мне сейчас приходит в голову так это писать для каждого такого дива свой код, но что если их будет 300-400 штук ? это же жесть вообще, да и неправильно это в корне помоему.
Ответить с цитированием
  #4 (permalink)  
Старый 07.04.2010, 01:01
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

а в каком месте ф-ция submit по вашему знает о том для какой формы ее вызвали?
передавайте это как-нибудь
и кстати, на странице не мжет быть двух элемнетов с одним id
Ответить с цитированием
  #5 (permalink)  
Старый 07.04.2010, 01:35
Интересующийся
Отправить личное сообщение для lol4eg Посмотреть профиль Найти все сообщения от lol4eg
 
Регистрация: 06.04.2010
Сообщений: 17

Да вы правы получается, тогда попробуем добавить чтонить уникальное для формы типа такого
<div id="submit_status'.$i.'">Здесь будет ответ сервера</div>

тогда у нас будут уникальные id для каждой формы, помогите как нибуть усовершенствовать функцию submit() для правильной обработки всех id.
Сама функция:
function submit() {
	var req = getXmlHttp()  
	var statusElem = document.getElementById('submit_status') 
	
	req.onreadystatechange = function() {  
		if (req.readyState == 4) { 
			statusElem.innerHTML = req.statusText 
		}

	}

	req.open('GET', './ajax.php', true);  
	req.send(null); 

	statusElem.innerHTML = 'Ожидаю ответа сервера...' 
}
Ответить с цитированием
  #6 (permalink)  
Старый 07.04.2010, 01:42
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

передавайте в нее в качестве параметра соотвествующий id
Ответить с цитированием
  #7 (permalink)  
Старый 07.04.2010, 02:21
Интересующийся
Отправить личное сообщение для lol4eg Посмотреть профиль Найти все сообщения от lol4eg
 
Регистрация: 06.04.2010
Сообщений: 17

а можно пример как получить данные в js ?
Ответить с цитированием
  #8 (permalink)  
Старый 07.04.2010, 02:56
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Здравствуйте!

Судя по вашему сообщению, вы ну совсем не знаете javascript.

Освойте основы языка и вопрос отпадет сам, полностью или частично.
А с чем не справитесь - поможем.

На сайте javascript можно начать изучать с учебника, раздел Основы javascript.
Возможно, вам также понадобится HTML - учебник есть, например, здесь: http://ru.html.net/tutorials/html/

Задавайте конкретные вопросы по ходу дела.
Ответить с цитированием
  #9 (permalink)  
Старый 07.04.2010, 15:56
Интересующийся
Отправить личное сообщение для lol4eg Посмотреть профиль Найти все сообщения от lol4eg
 
Регистрация: 06.04.2010
Сообщений: 17

Читал, так и не нашел как в js можно получить этот заведомо неизвестный id из дива, я так понимаю это реализуется с помощью DOM ? можно ссылку на раздел справки описывающий мою проблему ?
Ответить с цитированием
  #10 (permalink)  
Старый 07.04.2010, 16:18
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Надеюсь как-то поможет:

php:

for ($i=0; $i < 2;$i++) {
 echo '<br /><div align="center" style="border: 1px dotted #AAA;padding:2px">
        Введите данные:
        <input type="text" id="data' . $i . '" />
        <input value="Отправить" onclick="submit(' . $i .')" type="button" />
        <div id="submit_status' . $i . '">Здесь будет ответ сервера</div>
        </div>';
}


далее яваскрипт:

function submit(num)
{
 var data = document.getElementById("data" + num);
 var div = document.getElementById("submit_status" + num);
....


вот мы и получили нужный нам input и нужный нам div, дальше уж сам.
__________________
.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Слежение за уникальностью загружаемых скриптов по ajax ekkl jQuery 8 18.02.2010 15:30
Как в ajax запросе передать файл методом POST mcpro jQuery 1 16.12.2009 11:41
Сохранение результата ajax запроса после нажатия 'back' gregOlsen AJAX и COMET 5 18.11.2009 12:23
Проблема с AJAX запросом + mod_rewrite BrokenEye AJAX и COMET 1 12.07.2009 02:08
Объясните как вызывается ajax скрипт AddressBook из формы prog90 AJAX и COMET 3 06.06.2009 16:12