[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Аякс, форма, модальное окно
Страницы: 1, 2, 3
dimonise
а ведь это самый простой способ.... жаль если забросит и не пойдет дальше
Иван444
Цитата (inpost @ 24.01.2014 - 17:06)
Иван444
Ну так давай обычный аякс продемонстрируй мне. Ну к примеру кликнули на кнопку, запрос отправился на сервер и результат с сервера вернулся. Простой Аякс без модальных окон.

В общем сижу учусь учусь, пока вывод таков, что я не могу разобраться как работает аякс этот

Сейчас я допустим делаю примерно следующее

Сделал кнопку по которой кликну, чтобы выполнился непонятный мне аякс, а может это и не аякс вовсе, я уже настолько запутался если честно, не понимаю что откуда берется, какая то хрень происходит(

<div id="klikni">Нажми меня</div >


Дальше я создал страницу назвал robot.php, как я бы я ее хочу при помощи аякса подгрузить что ли, не знаю как назвать правильно

в странице просто написал

 echo'не кисни :)';



дальше где у меня джейквери вот такой код написал




$("#klikni").click(function(){
$.ajax({
url:"/robot.php",
type:"POST",
cache:false,
data:{ age : 24 },
success:function(result){
alert(result) ;

}
}
);
});


в общем когда кликаю на мою надпись (нажми меня), у меня открывается alertOM окошко в котором весь мой HTML с индексной страницы. Как почему и зачем не понимаю(


Не знаю понятно описал или нет, прошу прощенья если непонятно

Иван444
Цитата (sergeiss @ 24.01.2014 - 19:19)
dimonise, не смеши smile.gif Тут человек не может по готовой статье сделать, а ты хочешь, чтобы он джейквери изучил, хотя бы по минимуму... Не будет, готов поспорить, что не будет! wink.gif

Впрочем, в данном случае буду рад ошибиться...

Не поверишь, но я изучал)))) Пытался по крайней мере, но видимо не то
inpost
Иван444
У тебя открывается index, а не robot. Откуда я знаю, как у тебя ЧПУ настроен или другие переадресации, такие как 404.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
inpost
В адресной строке если набрать robot.php, у тебя точно этот файл откроется?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Иван444
Цитата (inpost @ 24.01.2014 - 21:48)
В адресной строке если набрать robot.php, у тебя точно этот файл откроется?

нет не откроется, настроен вроде как у тебя в курсах, адресная строка такая

домен/modul и дальше если что то идет то прикрепляется через ?parametr1=1&parametr2=2 и т.д.

dimonise
дай код индекса
GET
Иван444

Ты не паникуй, ты не глупее других, там все очень просто, сложным кажется потому, что ты не уловил саму суть, как все работает вот и все.

Попробую описать на основе библиотеки jQuery. Надеюсь ты понимаешь что она должна быть подключена в заголовках страницы вместе с твоим CSS, типа того вот, если прямо с интернета:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>


1. Вот ты пишешь в адресной строке: www.google.com, что происходит? Браузер отправялет запрос, в ответ через кучу соединений провайдеров на сервер гугла, тот присытает тебе инфу в виде своей знаменитой поисковой строчке, той что ты видишь на экране.

2. Эта поисковая строчка - видимая тебе часть этой инфы - HTML код, но на странице также может быть и JavaScript код (обычно связанные функции).

3. Предположим в одной из функция есть такой код:

$("#klikni").click(function(){
$('#service').html('Hello world!');
});


Что это значит? Функция ждет, когда ты нажмешь на HTML объект с id="klikni", а когда нажмешь ее задача вставить внутрь объекта с id="service" текст 'Hello world!', например получится так: <div id="service">Hello world!</div>. И ты увидишь этот текст на странице.

4. Для чего нужен AJAX запрос?
Для того, чтоб расширить возможности пункта 3.

Предположим? на странице, поисковая строчка Google представляет собой обычное текстовое поле, а id="klikni" у кнопки:

<input type="text" name="google" id="search" value=""/>
<input
type="button" name="ok" id="klikni" value="Ok"/>


$("#klikni").click(function(){

var search = document.getElementById("search").value;//собираем что внутри текстового поля
$.post('robot.php', {srch:search},function(data){
if(data.length>0)
{
$('#service').html('search:'+data);
}
else $('#service').html('По запросу ничего не найдено.');
});
});



Теперь пишем в текстовом поле "Hello" по нажатию на кнопку "Ок":
- то, что ты написал в строчке поиска собирается в переменную search, т.е search='Hello'
- отправляется на сервер в виде перменной $_POST['srch'], точно таким же запросом, как www.google.com, но когда приходит на просто www.google.com, то обычно, по умолчанию обращается к google/index.php, а у тебя обратится к google/robot.php.

В robot.php будет следущий код:

if(isset($_POST['srch']))echo ' Иван444';
exit;

Все.

Сервер отправит тебе инфу - ' Иван444'.
Функция ее принимает в виде data и создает ответ:

$('#service').html('search:'+data);


Теперь: <div id="service">Hello Иван444</div>

Иван444 - кусок который пришел тебе AJAX запросом.

Т.е. AJAX запрос это типа маленького сайта внутри сайта. Если б ты просто запустил robot.php то на всем белом экране увидел бы в левом углу Иван444. А когда это делает функция JavaScript через AJAX запрос, то она помещает это в нужное место экрана - туда куда скажешь и то, что скажешь, например можешь ее одеть в красны цвет:

$('#service').addClass('red').html('search:'+data);


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


Примерно так.

Расписал, как понимаю я. Может меня поправят, но под настроение и хорошую музыку в ожидании блинов почему бы и нет. :)

_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.