Javascript.RU

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

Автоматическое заполнение формы, Связанные поля
Похоже задача настолько элементарна, что в сети я для её решения практически ничего не нашёл.
Есть база данных с информацией о цели (пользователе, товаре и т.п.). При заполнении формы необходимо, чтобы после ввода значения в поле "наименование цели" отправлялся запрос к БД и при нахождении введённого значения возвращался результат с информацией, которая бы заполняла поля формы.
Здесь нашёл пример решения задачи. но по средствам библиотеки Prototype. И исковеркав образец под свои нужды получил:
<form action="сайт.хрю/php/Script.php" method="POST" id="FormName_id" name="FormName_name">
 <input type="text" id="Input4Text_id_0" name="Input4Text_name_0">
 <input type="text" id="Input4Text_id_1" name="Input4Text_name_1">
 <input type="text" id="Input4Text_id_2" name="Input4Text_name_2">
 <textarea id="Textarea_id_3" name="Textarea_name_3"></textarea>
</form>
 <script type="text/javascript">
function getData(){
 new Ajax.Updater('result', 'сайт.хрю/php/getData.php', {
  method: 'post', parameters: $('FormName_id').serialize(), onSuccess: function(transport){
   $('Input4Text_id_1').value = transport.responseXML.getElementsByTagName('str_1')[0].firstChild.nodeValue;
   $('Input4Text_id_2').value = transport.responseXML.getElementsByTagName('str_2')[0].firstChild.nodeValue;
   $('Textarea_id_3').innerHTML = transport.responseXML.getElementsByTagName('str_3')[0].firstChild.nodeValue;
  }
 });
}
 </script>


и getData.php:
<?php
header( "content-type: text/xml" );
if(isset($_POST['Input4Text_id_0'])){
 require "{$_SERVER[DOCUMENT_ROOT]}/Options.php";
 require "{$_SERVER[DOCUMENT_ROOT]}/php/Connection.php"; //Вставки для подключения к БД (не суть)
 $Запрос = "SELECT * FROM `TableName` WHERE `ColName_0` LIKE '{$_POST['Input4Text_id_0']}' LIMIT 1";
 $Ответ = mysql_query($Запрос) or die('Не пашет, ибо ' . mysql_error());
 while($Поле = mysql_fetch_array($Ответ)){
  $strrr1 = $Поле['ColName_1'];
  $strrr2 = $Поле['ColName_2'];
  $strrr3 = $Поле['ColName_3'];
 }
}
?>
<data>
 <str_1><?echo $strrr1;?></str_1>
 <str_2><?echo $strrr2;?></str_2>
 <str_3><?echo $strrr3;?></str_3>
</data>


Подскажите как это преобразить, чтобы заработало с jQuery???

Если в jQuery эта задача решается иначе - не проходите мимо: мне главное результат.

Последний раз редактировалось gtv7JavaScript, 23.03.2012 в 16:02.
Ответить с цитированием
  #2 (permalink)  
Старый 23.03.2012, 15:20
Аватар для Tmin10
Кандидат Javascript-наук
Отправить личное сообщение для Tmin10 Посмотреть профиль Найти все сообщения от Tmin10
 
Регистрация: 13.05.2011
Сообщений: 104

Сам алгоритм: при заполнении поля отправить post запрос на сервер, полученные данные вставить в соответствующие поля, на время запроса их можно заблокировать и написать что то типа "загрузка".
Ответить с цитированием
  #3 (permalink)  
Старый 23.03.2012, 15:33
Новичок на форуме
Отправить личное сообщение для gtv7JavaScript Посмотреть профиль Найти все сообщения от gtv7JavaScript
 
Регистрация: 23.03.2012
Сообщений: 2

Это теория. А что в уже представленном мною коде изменить. дабы заработало с jQuery?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
на выходе склеить два поля формы в одно kazakru Общие вопросы Javascript 3 22.08.2011 21:57
Нужен скрипт заполняющий поля формы IgorSt Общие вопросы Javascript 0 05.05.2011 19:44
Дублирование значения одного поля формы в другое LatSer Общие вопросы Javascript 0 15.01.2010 14:46
Как сделать связанные поля ввода diakon Элементы интерфейса 2 11.12.2009 16:17
Подгружаемые поля формы AlexJ AJAX и COMET 2 26.06.2009 18:04