Автоматическое заполнение формы, Связанные поля
Похоже задача настолько элементарна, что в сети я для её решения практически ничего не нашёл.
Есть база данных с информацией о цели (пользователе, товаре и т.п.). При заполнении формы необходимо, чтобы после ввода значения в поле "наименование цели" отправлялся запрос к БД и при нахождении введённого значения возвращался результат с информацией, которая бы заполняла поля формы. Здесь нашёл пример решения задачи. но по средствам библиотеки 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 эта задача решается иначе - не проходите мимо: мне главное результат. |
Сам алгоритм: при заполнении поля отправить post запрос на сервер, полученные данные вставить в соответствующие поля, на время запроса их можно заблокировать и написать что то типа "загрузка".
|
Это теория. А что в уже представленном мною коде изменить. дабы заработало с jQuery?
|
Часовой пояс GMT +3, время: 13:09. |