Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: ajax ответ в виде булева значения
 
 автор: Ванек2010   (12.07.2011 в 20:17)   письмо автору
 
 

Есть Форма, есть библиотека jQuery и используемый в ней аякс.
Вводим данные в форму, на лету отправляется файлу test.php значение этого поля.
Дальше возвращается ответ, получили успешно все хорошо.
Ответ является текстом либо "Ошибка: не верные символы", либо "Успешно: вы зарегистрированы". Дальше сам вопрос.
Ответ надо разукрасить, если успешно, то зеленым цветом, если ошибка то красным.
Не прибегая к php, чисто на JS и еще момент, текст ошибки формируется у php.

  Ответить  
 
 автор: cheops   (13.07.2011 в 00:22)   письмо автору
 
   для: Ванек2010   (12.07.2011 в 20:17)
 

PHP скрипт возвращает только эту фразу? Куда jQuery помещает этот ответ, нельзя тому же тэгу назначить стили color с нужным оформлением?

  Ответить  
 
 автор: Emm   (13.07.2011 в 04:17)   письмо автору
 
   для: Ванек2010   (12.07.2011 в 20:17)
 

Проверяете ответ на наличие того или иного слова и в соответствии красите в нужный цвет...
примерно так:

     if(answer.indexOf("Ошибка", 0) != -1) {
      $('#insert').css({color:'red'}).html(answer);
     } else {
      $('#insert').css({color:'green'}).html(answer);  
     }

  Ответить  
 
 автор: Ванек2010   (13.07.2011 в 11:19)   письмо автору
 
   для: Emm   (13.07.2011 в 04:17)
 

Уже помогли, сказали, что передавать необходимо и удобнее через JSON.

  Ответить  
 
 автор: АЯ   (13.07.2011 в 16:03)   письмо автору
 
   для: Ванек2010   (13.07.2011 в 11:19)
 

Вот что делает с людьми бездумное использование "модного в нынешнем сезоне".

Вместо примитивнейшего (из пяти-семи строчек) кроссбраузерного кода на чистом JS подключается огромная библиотека JQuery, а вслед за ней - вместо добавления ещё одной строки чистого JS - подключается ещё и библиотека JSON...

Опупеть!

  Ответить  
 
 автор: Emm   (14.07.2011 в 01:10)   письмо автору
 
   для: АЯ   (13.07.2011 в 16:03)
 

Предположу что ви соеденены через dial-up? поздравляю, нынче это такая же роскошь как и разработчик на чистом JS со своими простынями кроссбраузерного кода)))
Вы не поверите, но подключив библиотеку пользователь решает 80% поставленной задачи.

  Ответить  
 
 автор: АЯ   (14.07.2011 в 02:42)   письмо автору
 
   для: Emm   (14.07.2011 в 01:10)
 

Нет, ваше предположение ошибочно. Соединен я уже давно по "выделенке", скорость 100+Мбит/с.

Повторяю - кроссбраузерный код на чистом JS в данном случае - не "простыня", а всего несколько коротеньких строчек.

Подключив ту или иную библиотеку в случае, когда она ВОВСЕ НЕ НУЖНА, пользователь на 100% отключает свои мозги.

  Ответить  
 
 автор: Emm   (14.07.2011 в 04:30)   письмо автору
 
   для: АЯ   (14.07.2011 в 02:42)
 

Согласен)

  Ответить  
 
 автор: Ванек2010   (14.07.2011 в 14:42)   письмо автору
 
   для: АЯ   (14.07.2011 в 02:42)
 

json, ajax и удобное создание визуальных эф. всего лишь одна библиотека, а не 100500 как вы думаете) И зачем мне париться с этой писаниной кросбраузерного приложения, когда я знаю что jQuery будет работать везде как надо, просто и удобно.
Вы мне напоминаете коммуниста, с старым застоем, круглое носим, квадратное катаем.

  Ответить  
 
 автор: АЯ   (14.07.2011 в 16:58)   письмо автору
 
   для: Ванек2010   (14.07.2011 в 14:42)
 

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

Объясняю на пальцах.

В нормальном виде:
1. Организация связи с сервером (AJAX) - это пять-семь строчек чистого JS (полкилобайта максимум)
2. Организация раскраски ответа сервера - это плюс ещё одна строка (полсотни байт)

У вас же:
1. Организация связи с сервером (AJAX) - это библиотека JQuery (сотня килобайтов)
2. Организация раскраски ответа сервера - это плюс ещё одна библиотека JSON (сотня килобайтов)

Пусть даже библиотека JQuery у Вас подключена для каких-то других визуальных эффектов - не грех тогда использовать эту библиотеку и для связи с сервером.
НО... подключать ещё одну библиотеку в сотню килобайт только для раскраски ответа сервера - это верх идиотизма.
"Квадратное катать" по сравнению с этим Вашим решением - это почти гениальность.

  Ответить  
 
 автор: Ванек2010   (14.07.2011 в 17:10)   письмо автору
 
   для: АЯ   (14.07.2011 в 16:58)
 

Похоже вы плохо читали мой пост. Json встроен в jQuery, ни какие дополнительные библиотеки подсоединять не надо.
1. Визуальные эффекты
2. Асинхронная передача данных
3. Удобный прием этих данных
4. Кроссбраузерность
5. Удобность и простота написания кода
Все это, по-моему мнение, намного сильнее каких-то 90 килобайтов за которые вы сражаетесь в поте лица.

  Ответить  
 
 автор: cheops   (14.07.2011 в 19:03)   письмо автору
 
   для: Ванек2010   (14.07.2011 в 17:10)
 

Не спорьте с АЯ, перед ним нет проблемы кроссбраузерности, он хорошо JS знает, ему проще разработать весь код самому - он будет меньше и делать только то, что ему нужно, более того, он скорее всего у него давно разработан почти для всех случаев жизни. Другое дело, что он изучал JS так давно, что плохо представляет себе проблемы тех, кто JS только начинает изучать или знает JS не твердо. Вообще с любой стороны 90Кб, которых могло бы и не быть (они могли быть встроены в браузер, например) - это плохо и не дело. Рано или поздно они исчезнут и на смену jQuery если не придет другая технология, то jQuery встроят в браузер. Проблема кроссбраузерности, особенно при построении больших систем есть - в любом случае нужна какая-то библиотека, которая исправит ситуацию - иначе где-нибудь ошибка точно просочиться. По сути взвешенный подход - для небольших проектов маленький код на чистом JS, для больших проектов интенсивно использующих множество JS-эффектов: jQuery (или своя аналогичная библоиотека) и плагины. Утверждать, что во всех случаях верен только один подход, наверное не правильно.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования