Я нахожу много это вещество AJAX бит навязчивой рекламы. Серии людей имеют
использование подобных вещей прежде им стало «AJAX». И оно реально
не будет как осложнен по мере того как много люди делают его вне для того чтобы быть. Здесь a
просто пример от одного из моих apps.
/* ЯВАСКРИПТ ДЛЯ ТОГО ЧТОБЫ СОЗДАТЬ ИНФРАСТРУКТУРУ AJAX *
ФУНКЦИЯ/* ДЛЯ ТОГО ЧТОБЫ СОЗДАТЬ ПРЕДМЕТ ЗАПРОСА BROWSER-DEPENDENT *
createRequestObject функции ()
{
ro var;
браузер var = navigator.appName;
если (== «Мичрософт Интернет Ехплорер» браузера), то
{
ro = новое ActiveXObject («Microsoft.XMLHTTP»);
} еще
{
ro = новое XMLHttpRequest ();
}
возвращенный ro;
}
ФУНКЦИЯ/* ДЛЯ ПОСЫЛКИ ЗАПРОСА *
sendReq функции (действие)
{
http.open («получите», 'ajaxprocessor.php? действие action='+);
http.onreadystatechange = handleResponse;
http.send (null);
}
ФУНКЦИЯ/* ДЛЯ ТОГО ЧТОБЫ ОТРЕГУЛИРОВАТЬ РЕАКЦИЮ *
handleResponse функции ()
{
если (== http.readyState 4)
{
реакция var = http.responseText;
уточнение var = новый блок ();
если (response.indexOf, то («|»! = -1))
{
уточнение = response.split («|");
document.getElementById (уточнение [0]) .innerHTML = уточнение [1];
}
}
}
/* СОЗДАЮТ ПРЕДМЕТ *
var http = createRequestObject ();
КОНЕЦ/* ЯВАСКРИПТА *
Это создает предмет запроса вместе с запросом и ручкой посылки
функция отдачи. Так фактическ использовать его, вы smogли включить эт js внутри
ваша страница. После этого сделать одним из этих backend запросов вас связал бы его
к что-то. Как случай onclick или прямое href полюбите это:
[Foo]
То намеревается то когда кто-то щелкает дальше тем соединением фактическ случается
будет то backend запрос к ajaxprocessor.php? action=foo будет послано.
В ajaxprocessor.php вы могли иметь что-нибудь подобное:
/* PHP ДЛЯ ТОГО ЧТОБЫ ОТРЕГУЛИРОВАТЬ ЗАПРОС ОТ FRONT-END СЦЕНАРИЯ *
переключатель ($_GET [«действие»])
{
случай «foo»:
// ДЕЛАЕТ ОБРАБАТЫВАТЬ СООТВЕСТВУЮЩИЙ
// ПОСЛЕ ЭТОГО ВОЗВРАЩАЕТ ШНУР РЕАКЦИИ К handleResponse ()
foo отголоска «|Сделанное Foo»;
пролом;
// ETC…
}
Теперь, взгляд на handleResponse. Оно parses «foo|Шнур сделанный Foo» и
разделения оно на «|» и использует перед «|» как dom
удостоверение личности элемента в вашей странице и части после как нового innerHTML того
элемент. То середины если вы имеете бирку div как это в вашей странице:, то
Foo
Как только вы щелкаете дальше тем соединением, то динамический, будет изменено к:
Сделанное Foo
То все там к ему. Все еще как раз строит na górze
это. Заменяющ ть удостоверение личности мою просто реакцию «|синтаксис текста» с более богатым XML
форматируйте и делающ запрос очень более осложнять также. Перед вами
слепо установите большие архивы «AJAX», имейте идти на свертывать ваши
функциональность поэтому вы умеете точно как они работают и вы только делаете ее как
осложненн по мере того как вам. Часто вам не нужны очень больше чем I
покажите здесь.
Расширяющ этот подход бит для посылки множественных параметров в
запрос, например, был бы реально просто. Что-то любит:
sendReqArg функции (действие, arg)
{
http.open («получите», 'ajaxprocessor.php? arg action='+ action+'& arg='+);
http.onreadystatechange = handleResponse;
http.send (null);
}
И ваше handleResponse можно легк расширить для того чтобы сделать интересное
вещи чем как раз заменяющ ть содержание div.
- Rasmus (Lerdorf?)
|