Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> jQuery вернуть результат обратно, в input type="text" 
:(
    Опции темы
StachelDraht
Дата 20.1.2009, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



Привет!
Как добавить запись в базу через Ajax я понял.
Теперь меня очень интересует как вернуть эту самую запись обратно в input type="text"


Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>AJAX</title>
<script language="javascript" src="/j/jquery.js"></script>
<script language="javascript" src="/j/j-php/javascript/jquery.form.js"></script>
<script type="text/javascript">
$(document).ready(function(){
// ---- Форма -----
   $("#myForm").ajaxForm(function() { 
     alert("Спасибо за комментарий!"); 
   }); 
// ---- Форма -----
});
</script>
</head>

<body>
<form id="myForm" action="dogb.php" method="post">
<table width="500" border="0">
  <tr>
    <td width="101">Name:</td>
    <td width="389"><label>
      <input type="text" name="name" id="name" />
    </label></td>
  </tr>
  <tr>
    <td>Mail:</td>
    <td><input type="text" name="mail" id="mail" /></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><label>
      <input type="submit" name="button" id="button" value="update" />
    </label></td>
  </tr>
</table>
</form>
</body>
</html>



После нажатия на кнопку мы обновляем инфу в базе, и надо одновременно вернуть обновленную инфу обратно в input type.

Использую jQuery

Надеюсь на помощь.
Спасибо!
PM MAIL   Вверх
krundetz
Дата 20.1.2009, 22:54 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 2
Всего: 69



StachelDraht, ты можешь пойти двумя путями первый присылать клиенту полностью готовый html-код формы и просто вставлять его в нужное место, либо присылать с сервера в клиент объект и расставлять значения полей в таблицы в соответствии со свойствами объекта.


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
ksnk
Дата 21.1.2009, 00:13 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 38
Всего: 386



Какой-такой input type? в тексте их там 3...

dogb.php
Код

<?php
echo 'Усе в порядке, шеф!';
?>


Код

...
// ---- Форма -----
   $("#myForm").ajaxForm(function(data) { 
     alert(data); 
   }); 
// ---- Форма -----
...

Вот так не понятнее будет?






--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
StachelDraht
Дата 21.1.2009, 02:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



ksnk, тут допер, спасибо!

И походу дела...
У меня уже вобще ничего не работает.

Есть форма на странице и там же подключаем jquery
Код

<script language="javascript" src="/jphp/javascript/jquery.js"></script>
<script language="javascript" src="/jphp/javascript/jquery.form.js"></script>
<script type="text/javascript">
$(document).ready(function(){
// ---- Форма -----
   $("#formContent").ajaxForm(function() { 
     alert("Спасибо за комментарий!"); 
   }); 
// ---- Форма -----
});
</script>


<form id="formContent" action="section.php" method="post" >
<table width="932" border="0">
  <tr>
    <td><input name="title" type="text" class="form"  value="<? echo title($table); ?>"/></td>
  </tr>
  <tr>
    <td><?php

        $sql = mysql_query("SELECT content FROM $table");
        if ($sql) $show_content =  mysql_result ($sql,0,'content');
        else exit (mysql_error());

        $oFCKeditor = new FCKeditor('FCKeditor1') ;
        $oFCKeditor->BasePath = '/fckeditor/' ;
        $oFCKeditor->Value = "$show_content" ;
        $oFCKeditor->Create() ;
        ?></td>
  </tr>
  <tr>
    <td><input type="hidden" name="table" value="<? echo $table; ?>" />
      <input type="submit" name="Update_content" value="Update" /></td>
  </tr>
</table>
</form>


В данном случае вообще никакой реакции на javascript, идет обычная перезагрузка.

Это сообщение отредактировал(а) StachelDraht - 21.1.2009, 02:14
PM MAIL   Вверх
ksnk
Дата 21.1.2009, 08:46 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 38
Всего: 386



Цитата

 вообще никакой реакции на javascript

Это , как правило, значит, что случилась ошибка при трансляции javaScript кода.

Нужно поставить себе FireFox с FireBug'ом и посмотреть где и кто неправильно чего написал.

P.S. Php'шная вставка с FCK - это НЕ JavaScript.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
krundetz
Дата 22.1.2009, 01:18 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 2
Всего: 69



Цитата(StachelDraht @  21.1.2009,  02:18 Найти цитируемый пост)
Ну первый способ не подходит.
Если не трудно, опиши подробнее второй способ. В каком виде я должен получать инфу с сервера.

с сервера инфу ты должен получить в виде JSON это обычный текст примерно такого вида:
Код

{
   "firstName": "Иван",
   "lastName": "Иванов",
   "address": {
       "streetAddress": "Московское ш., 101, кв.101",
       "city": "Ленинград",
       "postalCode": 101101
   },
   "phoneNumbers": [
       "812 123-1234",
       "916 123-4567"
   ]
}

получаешь при помощи метода jQuery getJSON
он тебе вернет объект с которым ты сможешь работать как с любым объектом.
как 
Код

if(obj.textArea)
{
     jQuery("input[@name='textArea']").val(obj.textArea);
}
то так




--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
StachelDraht
Дата 22.1.2009, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



krundetz, спасибо большое!
Попробую, потом отпишусь.
PM MAIL   Вверх
StachelDraht
Дата 27.1.2009, 03:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



Ерунда тут такая.
Сам файл select.php подгружается, а переменные ему не передаются.
Почему так?
Код

$(document).ready(function(){
// ---- Форма -----
   $("#Select_form").ajaxForm(function() { 
   $("#Select_pole").load('select.php');
   }); 
// ---- Форма -----
});

Код

<form action="select.php" id="Select_form" method="post">
<table width="300" border="0">
  <tr>
    <td width="72">Марка:</td>
    <td width="218"><label>
      <select name="mark2">
        <option value="Alfa Romeo">Alfa Romeo</option>
        <option value="Audi">Audi</option>
      </select>
    </label></td>
  </tr>
  <tr>
    <td>Цвет:</td>
    <td><label>
      <select name="color2">
        <option value="Yellow">Желтый</option>
        <option value="Green">Зеленый</option>
      </select>
    </label></td>
  </tr>
  <tr>
    <td></td>
    <td><input type="submit" name="button2" id="button2" value="Показать" /></td>
  </tr>
</table>
</form>




Это сообщение отредактировал(а) StachelDraht - 27.1.2009, 03:02
PM MAIL   Вверх
krundetz
Дата 27.1.2009, 13:34 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 2
Всего: 69



вот почему
Код

$("#Select_pole").load('select.php');

ты просто обращаешься к скрипту php не передавая ему ни каких параметров, если хочешь передать параметры то допиши ?param1=znach1&param2=znach2 и так далее, они придут в скрипт методом GET если нужно чтобы пришли  параметры POST смотри документацию


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Aliance
Дата 27.1.2009, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 7
Всего: 137



Подождите, поясните мне:
у нас есть форма с текстовым полем. Мы изменяем это поле. Нажмимаем на submit и данные, введенные в поле с помощью ajax отсылаются серверу, где происходит добавление в БД. Но страница-то не перезагрузилась и не изменилась. Зачем в нее вставлять данные из БД?
PM MAIL WWW ICQ Skype   Вверх
StachelDraht
Дата 27.1.2009, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



Aliance
Не, мы делаем выборку по двум параметрам. К примеру из базы надо выдрать картинки с машинами audi.
Выбираем из списка ауди
Код

      <select name="mark2">
        <option value="Alfa Romeo">Alfa Romeo</option>
        <option value="Audi">Audi</option>
      </select>


Далее отправляем методом post в select.php где в свою очередь Select * from cars where mark = '".$mark."' ...


Это сообщение отредактировал(а) StachelDraht - 27.1.2009, 14:45
PM MAIL   Вверх
ksnk
Дата 27.1.2009, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 38
Всего: 386



StachelDraht, А почитать, что-же написано в документации по этому плагину и понять, что запись 
Код

$("#Select_form").ajaxForm(function() { 
   $("#Select_pole").load('select.php');
   });

означает - после посылки формы с параметрами и получения ответа, загрузить то, что файл select.php нам скажет... 2 ajax'а вместо одного...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
StachelDraht
Дата 27.1.2009, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



неа, я все равно не допер  smile 
подскажите пожалуйста что почитать, ну не понимаю я

почему тогда таким же образом я посылаю значения и скрипт их принимает
Код

$(document).ready(function(){
// ---- Форма -----
   $("#add_knob").ajaxForm(function() { 
     alert("Добавлено!"); 
   }); 
// ---- Форма -----
});



PM MAIL   Вверх
ksnk
Дата 27.1.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 38
Всего: 386



Функция ajaxForm вызовет пред обработку настоящей формы в документе так, чтобы по нажатию на кнопку submit вызывался ajax-подгрузка этой формы. При этом адрес скрипта, которому будут посланы заполненные в форме значения определяется по атрибуту action/ метод, которым будет послана форма - по атрибуту method и так далее...
Параметром функции ajaxForm, как написано в документации, может быть объект со множеством полей, интересные из них 
success - callback функция, которая вызовется ПОСЛЕ получения ответа от посланной ajax'ом формы.

если парамер (param) функции не объект, а функция, параметр преобразуется вот в такой объект
{success:param} и выполнение продолжается...

Чего-нибудь стало понятно или продолжить цитирование документации ?  smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
StachelDraht
Дата 28.1.2009, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 19.1.2006

Репутация: нет
Всего: 1



Сделал методом get
Как передать параметры через post так и не понял  smile 
Всем спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0589 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.