|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » AJAX - динамическая подгрузка данных без перезагрузки страниц |
|
AJAX - динамическая подгрузка данных без перезагрузки страниц
|
Ветеран Сообщения: 1864 |
Профиль | Отправить PM | Цитировать Я никогда не обращал своё внимание на данную тему, так как динамическая подгрузка была очень сильно от браузера зависима, и чтобы пользоваться этой возможностью, надо было всегда все особенности популярных браузеров учитывать. Но сегодня нашёл статью, авторы которой утверждают, что их способ работает во всех браузерах (читай: кроссбраузерный).
Вот статья: http://dklab.ru/chicken/nablas/41.html Что вы думаете об этом?? Кто нибудь что то подобное делал или использовал? |
|
Отправлено: 13:48, 16-03-2005 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать vadimiron
я как то писал сайт который весь был на JS и весь генерился автоматически на стороне клиента... vadimiron может ты приведешь конкретную задачу а я подумаю над оптимальной ее организацией? |
------- Отправлено: 14:04, 16-03-2005 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать Vlad Drakula
ты немного не понял - речь идет о динамической подгрузке контента с сервера без перезагрузки страниц, причем уже дано достаточно оптимальное кроссброузерное решение с очень подробными разъяснениями. vadimiron я читала эту статью. Мне очень нравится. Единственное - надо при программировании обращать внимание на безопасность. (Хотя в целом - решение достаточно безопасное, если делать все в пределах одного сайта и следить за собой ) Там еще (на сайте автора) - обсуждение. Тоже стоит посмотреть. |
Отправлено: 15:48, 16-03-2005 | #3 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Да, интересная штука, в особенности псевдокроссбраузерность . Почему псевдо? В O7.54 она не работает. Об этой феньке еще написано тут, но исключительно для IE, M и FF. Лично я реализовывал такую штуку в админке для фирмы одной рязанской, это было очень удобно как пользователю, так и мне - было требование использовать для дел админских только IE не младше 5.5. Вышеприведенной статьей я и руководствовался... думаю, если разобраться с материалом по ссылке топикфаундера, можно довести дело до ума везде, было бы время .
|
------- Отправлено: 13:28, 17-03-2005 | #4 |
Ветеран Сообщения: 640
|
Профиль | Сайт | Отправить PM | Цитировать новая версия сегодня в 15:00 вышла..
а методом post никак нельзя обмениваться без перегрузки? 4кб както не внушающе.. и еще помоему, чтото похожее в чатах августа используется. |
|
------- Отправлено: 21:34, 17-03-2005 | #5 |
Ветеран Сообщения: 640
|
Профиль | Сайт | Отправить PM | Цитировать mar
кстати по поводу безопасности вот отрыл: http://www.uinc.ru/articles/40/ что думаете господа? мне вот не понятно что делает параметр false и true? true я заметил используется при get запросах а false как видно при методах trace и post. кстати говоря мне удалось спомощью этого активного объекта произвести пост запрос, все дело в заголовках. кому интересна тема, мнения плыз. |
------- Отправлено: 00:34, 24-03-2005 | #6 |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать E-mail
Цитата:
|
|
Отправлено: 00:43, 24-03-2005 | #7 |
Ветеран Сообщения: 640
|
Профиль | Сайт | Отправить PM | Цитировать mar
ты доконца дочитай |
------- Отправлено: 00:49, 24-03-2005 | #8 |
Пользователь Сообщения: 84
|
Профиль | Сайт | Отправить PM | Цитировать Есть опыт по созданию данной фишки под ASP. Вообщем суть, встала проблема, при выборе месяца и года ,автоматом в третьем ниспадающем меню выдавалось кол-во дней в выбраном месяце, конкретного года.
Для этого был написан JS файл, с функциями по перехват и отправке данных на сервер, файл соотв. где были формы и файл по обработке отосланых данных. Т.е. выбирают месяц и год, данные о выбранном сразу идут на файл с обработкой событий и третья форма после обработки получает кол-во дней. Все без перезагрезки страницы. 1. Скрипт файл, который можно имопртировать в файл с меню. // Общий URL до файла (файл должен быть на сервере, где расположена сама страница) с обработкой событий var url = "functions/aspvalidate.asp?month="; var url2 = "&year="; // Присваеваем результат запроса объекту function handleHttpResponse() { if (http.readyState == 4) { // Присвоение результата после обработки конкретному объекту, в виде вложеного HTML кода document.getElementById("DateDaySelectSpan").innerHTML = http.responseText; } } // При изменении значения полей отправляем запрос снова function updateSelection() { // Считываем значения двух ниспадающих меню var SelectedMonth = document.getElementById("DateMonthSelect").value; var SelectedYear = document.getElementById("DateYearSelect").value; // Отсылаем переменные ффайлу с функциями обработки событий http.open("GET", url + escape(SelectedMonth) + url2 + escape(SelectedYear), true); http.onreadystatechange = handleHttpResponse; http.send(null); } // Получаем заголовок HTTP объекта function getHTTPObject() { var xmlhttp; // Обработка события IE подобным браузером /*@cc_on @if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } @else xmlhttp = false; @end @*/ if (!xmlhttp && typeof XMLHttpRequest != '1') { try { xmlhttp = new XMLHttpRequest(); } catch (e) { xmlhttp = false; } } return xmlhttp; } var http = getHTTPObject(); <% '// Обработка переменных адресной строки if Session("CurrentUserLogin") <> 0 Then '// Сбор идентификаторов из адресной строки monthID = idStatus("month") yearID = idStatus("year") '// Функция замены вывода данных на экран [Response.Write] Function echo(StringContent) Response.Write(Stringcontent) End Function '// Функция обработки переменной адресной строки на предмет целочисленности Function idStatus(txtQueryString) if isNumeric(Request.QueryString(txtQueryString)) then if Request.QueryString(txtQueryString) > 0 then idStatus = Request.QueryString(txtQueryString) else idStatus = 0 end if else idStatus = 0 end if End Function '// Вычисление количества дней в текущем месяце Function DaysInMonth(SelectedDate) DaysInMonth2 = SelectedDate CurrentDate = Day(DaysInMonth2) BeginMonth = DateAdd("d",-(CurrentDate-1),DaysInMonth2) EndMonth = (DateAdd("m",1, BeginMonth)-1) DaysInMonth = Day(EndMonth) End Function '// Вывод количества дней в ниспадающее меню, в зависимости от выбранного месяца и года TotalDays = DaysInMonth("1" & "/" & monthID & "/" & yearID) echo "<select name='DateDaySelect' id='DateDaySelect'>" '// Окончательный вывод данных в строку, которая уйдет с запросом обрано в документ с меню for i = 1 to TotalDays echo "<option value=" & i & selectedOption & ">" & i & "</option>" next echo "</select>" end if %> |
Последний раз редактировалось mar, 28-05-2006 в 13:07. Отправлено: 01:53, 24-03-2005 | #9 |
Ветеран Сообщения: 640
|
Профиль | Сайт | Отправить PM | Цитировать iMP viSiOn
гы, а я задачу стоявшую не очень понял, нужно было показывать количество дней сколько прошло от даты которую выбрали? под асп эт конечно круто |
------- Отправлено: 02:20, 24-03-2005 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Проверка данных пользователя (PHP + JavaScript или Ajax) | darksmoke | Вебмастеру | 2 | 15-06-2009 17:28 | |
Службы - Изменение шлюза без перезагрузки? | sabre10 | Microsoft Windows 2000/XP | 1 | 18-04-2009 01:24 | |
Установка - [решено] Установка без перезагрузки | DarkError! | Microsoft Windows 2000/XP | 1 | 09-04-2009 19:52 | |
Переход из одной ОС в другую без перезагрузки | xkspy | Программное обеспечение Windows | 14 | 17-07-2004 22:52 | |
выборка данных из нескольких страниц | vunder | Программирование и базы данных | 2 | 12-07-2004 20:33 |
|