| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > Передача параметров сценарию из onChange без перех |
| Автор: borovyshka 3.11.2011, 12:22 | ||
| Добрый день! Очень нужна ваша помощь. Я плохо знакома с JavaScript, а нужно срочно произвести изменения в скрипте. Дело в том что при нажатии на кнопку onChange происходит переход на обновленную страницу, а необходимо чтобы страница обновлялась без перехода Это скрипт в работе http://93.125.57.11/TV/index.php Код на php:
Так же прикреплен весь скрипт страницы |
| Автор: SelenIT 5.11.2011, 01:34 |
| Просто убрать весь onchange проблему не решает? |
| Автор: borovyshka 8.11.2011, 14:36 |
| Нет не решает, тогда параметр выбранной даты не передается дальше, что не позволяет просмотреть программу по другим дням |
| Автор: skyboy 12.11.2011, 02:05 |
| в текущем случае переход по событию onchange только инициируется javascript'ом. на самом деле, отличия от прямой ссылки минимальны. в случае "обновления страницы без перезагрузки" не достаточно изменить только одну строчку с location. 0. джаваскрипт должен формировать запрос при помощи XMLHttpRequest или любой обертки над ним. никакого location.href = ... 1. сервер должен уметь обрабатывать запрос от джаваскрипта(клиентской составляющей) и по параметрам формировать/возвращать только кусок страницы(то, что обновляется), в то время, как сейчас возвращается страница целиком 2. джаваскрипт часть должна суметь дождаться ответа от сервера, проверить его на корректность(к примеру, чтоб вместо текста не возвращался код ошибки) и вставить содержимое ответа в нужное место. суммарно подобный процесс называется AJAX. и, как видно, реализация его не только клиентскую сторону затрагивает(и это не одна строка, нет), но и серверную. в лучшем самом быстром по времени внедрения случае, можно запрашивать джаваскриптом страницу целиком, выдирать из неё именно нужный кусок и вставлять в нужное место. это позволит обойтись без изменений на серверной стороне, но будет наверняка медленнее и потенциально нестабильнее. совсем на крайний случай, можно запрашивать новую страницу и выдирать у неё <body>, вставляя вместо текущего. но это вообще мегажесть, от которой я бы лично плакал кровавыми слезами :( |