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

HTML+CSS+JavaScript

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

 

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

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

тема: jQuery, с чем ее едят?
 
 автор: Николай2357   (17.07.2008 в 08:28)   письмо автору
 
 

Здравствуйте.
Нездоровое любопытство и осознанная необходимость подвигли меня на изучение основ AJAX. Перелопатив весь поиск по форуму и половину Гугла нарыл кучу обрывочной информации, которую никак не могу связать воедино. Главный вопрос, который меня мучает: как правильно использовать библиотеку jQuery. Насколько я понимаю, это все таки JS, который загружается на клиент. Та версия, которую я скачал (от жадности самую последнюю) весит около 100kb. Мне кажется нецелесообразно загружать всю библиотеку из-за одного действия, которое может быть и невостребовано. Как поступать в таком случае?
Или совсем я не так понимаю концепцию jQuery?
Спасибо.

   
 
 автор: AlexSol   (17.07.2008 в 09:51)   письмо автору
 
   для: Николай2357   (17.07.2008 в 08:28)
 

jQuery не ориентирована на работу чисто с Ajax.

помино аякса там есть анимация, события, очень удобный доступ к элементам страницы.

Вы скачали несжатую версию. если не собираетесь разбирать исходники библиотеки качайте сжатю - 30kb jQuery 1.2.6 (30kb, Packed)

основные возможности можете увидеть здесь - http://visualjquery.com/1.1.2.html

   
 
 автор: Николай2357   (17.07.2008 в 10:05)   письмо автору
 
   для: AlexSol   (17.07.2008 в 09:51)
 

Большое спасибо. Шикарныая ссылка, я видел, но как то не вник. На счет сжатой версии отдельно спасибо, я думал что это старая или неполная версия. Говорила мама - учись на гениколога, и деньги будут и руки в тепле. Буржуйский язык пока дается с трудом.
Если не сильно отрываю от дел, можно попросить кусочек действующего кода с Аjax, самый элементарный, типа "Привет, мир!"? От этого всегда плясать легче.
А разбирать исходники, я думал об этом, раз так делают, значит можно. Попробую.
Спасибо за подсказки.

   
 
 автор: AlexSol   (17.07.2008 в 10:44)   письмо автору
 
   для: Николай2357   (17.07.2008 в 10:05)
 

http://visualjquery.com/1.1.2.html > Ajax > $.get(url, params, callback)
- позволяет делать get-запрос к скрипту с передачей параметров



// при клике по ссылке с класом class='test'
$("a.test").click(function(){
    var query = 'test_strung';
    // осуществляется get-запрос к скрипту ligen.asp c передачей параметра q. т.е. запрос вида
    // ligen.asp?q=test_strung
    $.get("ligen.asp", { q: query},
          function(data){
            //полученные данные записываются в тег с id=ansv
            $('#ansv').append(data);        
         }
    )
    return false;
})

<a href='' class='test'>пробный запрос</a><br>
результат запроса:
<div id="ansv"></div>

   
 
 автор: Николай2357   (17.07.2008 в 11:13)   письмо автору
 
   для: AlexSol   (17.07.2008 в 10:44)
 

Спасибо.
Если я правильно понял, ligen.asp может быть и ligen.php? Меня в частности интересует отправка данных формы. В таком случае получит скрипт обратные данные?

   
 
 автор: AlexSol   (17.07.2008 в 11:34)   письмо автору
 
   для: Николай2357   (17.07.2008 в 11:13)
 

да, любой файл. лишь бы принимал данные и отдавал результат обработки )

   
 
 автор: Axxil   (17.07.2008 в 15:20)   письмо автору
 
   для: Николай2357   (17.07.2008 в 11:13)
 

У JQuery есть несколько методов работы с аяксом.

самые, пожалуй, востребованные это .load и .getJSON

В первом случае прямо в любой контейнер можно помещать текст с сервера.

т.е. пишем типа

<script>
  $('#button').click(function(){
    $('#area').load('/path/to/text.html');
  })
</script>
<div id="area"></div>
<input type="button" id="button" value="Load data">


и при нажатии на кнопку в контейнер загрузится документ с сервера text.html

Проще некуда :)

$.getJSON - возвращает в JS скрипт сразу массив переменных с сервера. Только на сервер немного надо помучаться с преобразованием array - JSON. Особенно если нет соответствующего расширения PHP.

А для работы с формами есть плагины. Можно поискать. Вообще практически по любому поводу в JQuery есть соответствующий плагин. Так что программирование обычно сводится к формуле гугл + copy/paste :)

   
 
 автор: Николай2357   (17.07.2008 в 16:12)   письмо автору
 
   для: Axxil   (17.07.2008 в 15:20)
 

Большое спасибо. Нашел отличную ссылку http://www.rsdn.ru/article/inet/jQuery.xml
Там про JQuery разжевано все, как для малышей. Но дело в том, что я веб-програмированием начал заниматься чуть больше месяца назад и за это время начитался всего, от простого HTML, до теперь аякса. Представьте, какя каша у меня в голове! Я иногда непонимаю элементарных вещей. То есть самых элементарных, о которых в статьях не пишут по определению, как о само собой разумеющихся.
Потом, когда доходит, бъю себя по лбу - блин, как все просто! И дальше все, как по маслу. Но чтобы на моем многострадальном лбу появилась очередная шишка, приходится перелопатить груду информации в поиске ответов на вопросы, которые стыдно даже задавать людям. Если попадается рабочий пример, все гараздо проще, поэтому 80% практических знаний я почерпнул на этом форуме. Вот и сейчас(пусть лучше лопнет моя совесть, чем мочевой пузырь) задам очередной глупейший вопрос:
<script  type="text/javascript" src="jquery.js" ></script>
<script type="text/javascript">

function Pusk(){

    var query = 'Здравствуй, мир!'; 
    $.get("test1.php", { q: query}, 
          function(data){ 
            $('#ansv').append(data);         
         } 
    ) 
    return false; 
}
</script>
</head>
<body>
<div id="ansv"></div>
<input   type="BUTTON" onClick="Pusk()" value="Пуск">


<?
$text
=$_GET['text'];
echo   
"$text ,я GET запрос";  
echo 
"Здравствуй, мир!";
?>

Что же тут не так? Где потерялся GET запрос?
Спасибо за внимание, спустил пар, стало легче.

   
 
 автор: Axxil   (17.07.2008 в 16:21)   письмо автору
 
   для: Николай2357   (17.07.2008 в 16:12)
 

А где параметр text у вас?

надо так:

<script  type="text/javascript" src="jquery.js" ></script>
<script type="text/javascript">

function Pusk(){

    var query = 'Здравствуй, мир!'; 
    $.get("test1.php", { text: query}, 
          function(data){ 
            $('#ansv').append(data);         
         } 
    ) 
    return false; 
}
</script>
</head>
<body>
<div id="ansv"></div>
<input   type="BUTTON" onClick="Pusk()" value="Пуск">




Ещё почитать:
http://www.webreview.org.ua/?id=3&action=article_detail&ar_id=17

   
 
 автор: Николай2357   (17.07.2008 в 16:36)   письмо автору
 
   для: Axxil   (17.07.2008 в 16:21)
 

Большое спасибо за очередную шишку! Так меня!
За ссылку отдельно, теперь дело пойдет.

   
Rambler's Top100
вверх

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