Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.10.2010, 16:26
Новичок на форуме
Отправить личное сообщение для Rollo Посмотреть профиль Найти все сообщения от Rollo
 
Регистрация: 16.10.2010
Сообщений: 4

Как передать значение по ссылке на другую страницу сайта
Лучше объяснить вопрос на примере:
На одной странице сайта - список адресов магазинов организации, у каждого магазина есть рядом ссылка "показать на карте".
При нажатии на эту ссылку попадаешь на другую страницу сайта, где динамически подгружается карта с меткой на ней местонахождения данного магазина, например yandex map. Для того чтобы подгрузилась карта с местонахождением именно этого магазина, нужно передать параметр данного магазина на страницу карты. Как это можно сделать средствами JS - передать значение переменной с одной страницы сайта на другую, минуя сервер и используя только клиентскую часть. Вроде задача простая, но что-то не смог ничего найти на эту тему. Заранее извиняюсь, если вопрос окажется банальным - недавно начал программировать на JS. Хотя мне кажется здесь не все так просто.
Ответить с цитированием
  #2 (permalink)  
Старый 17.10.2010, 17:18
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Как я понимаю - нужно парсить строку адреса, и оттуда доставать нужное значение параметра.
Ссылка типа: site.ru/map?target=some_address
Как парсить - не знаю. Полагаю регуляркой. Насколько я знаю в js нет средств работы с параметрами query строки...

Вообще решение топорное. Нужно в любом случае обрабатывать запрос на сервере. Либо разместить список адресов на странице с картой
Ответить с цитированием
  #3 (permalink)  
Старый 17.10.2010, 22:47
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Если сервер никак не обрабатывает запрос, зачем перезагружать страницу? Просто показывайте карту, скрыв всё ненужное.
Ответить с цитированием
  #4 (permalink)  
Старый 17.10.2010, 23:46
Новичок на форуме
Отправить личное сообщение для Rollo Посмотреть профиль Найти все сообщения от Rollo
 
Регистрация: 16.10.2010
Сообщений: 4

Сообщение от Kolyaj Посмотреть сообщение
Если сервер никак не обрабатывает запрос, зачем перезагружать страницу? Просто показывайте карту, скрыв всё ненужное.
В принципе идея. Но мне кажется, это не совсем хороший вариант, так как загрузка карты с ее JS библиотеками на той же странице что и адреса это лишний трафик, большее время загрузки страницы. В то время как посетителю сайта возможно карта не понадобится вовсе. С точки зрения сайтостроения, думаю, не совсем правильно.
Сейчас появилась идея засунуть это значение в куки, а потом со страницы карты эту куки прочитать, после прочтения куки удалить. Но тоже не совсем красиво, так как куки к тому же работает тоже через сервер.
А еще как вариант, откопал такую интересную вещь, как объект: window.localStorage (http://habrahabr.ru/blogs/ie/63704/) Объект довольно свежий, спецификации HTML5, поэтому будут проблемы со браузерами не самых последних версий.
Может кто-нибудь еще какую-нибудь идейку подкинет.
Ответить с цитированием
  #5 (permalink)  
Старый 18.10.2010, 04:24
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Все нормальные идейки вам уже подкинули. Вот они в порядке адекватности:
1) Обрабатывать запрос сервером. Какие тут могуть быть проблемы?
2) Показывать все на одной странице. Скрипты карты можно динамически подключать. Во фреймворках такие функции есть (Assets в mootoos например). Удобно для пользователя.
3) Вытягивать на странице карты нужный параметр из location.href. Во всю разит неадекватностью.
4) Юзать cookie, localStorage и прочие весчи. Верх неадекватности.
Ответить с цитированием
  #6 (permalink)  
Старый 18.10.2010, 12:26
Новичок на форуме
Отправить личное сообщение для Rollo Посмотреть профиль Найти все сообщения от Rollo
 
Регистрация: 16.10.2010
Сообщений: 4

Сообщение от danik.js Посмотреть сообщение
Все нормальные идейки вам уже подкинули. Вот они в порядке адекватности:
1) Обрабатывать запрос сервером. Какие тут могуть быть проблемы?
2) Показывать все на одной странице. Скрипты карты можно динамически подключать. Во фреймворках такие функции есть (Assets в mootoos например). Удобно для пользователя.
3) Вытягивать на странице карты нужный параметр из location.href. Во всю разит неадекватностью.
4) Юзать cookie, localStorage и прочие весчи. Верх неадекватности.
Я не волшебник, я только учусь.
1) Обрабатывать запрос сервером: Проблема простая: пока не хватает знаний. Я так понимаю здесь пахнет PHP, а я к этому языку еще не приближался вообще. Только изучение в ближайших планах.

2) Показывать все на одной странице. В будущем хочу попробовать модальные окна через jQuery

3) Вытягивать на странице карты нужный параметр из location.href:
Этим неадекватным путем я и пошел. Просто уже до этого сделал две готовые страницы и хотел их связать по-быстрому. Но получилось не так быстро. Пример реализации: http://lombard-korona.ru/lombard/contact/default.html

4) Юзать cookie, localStorage и прочие весчи. Верх неадекватности: Согласен.

Вообщем задачу пока решил, хотя и кривовато. Всем спасибо.
Ответить с цитированием
  #7 (permalink)  
Старый 18.10.2010, 13:20
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

Еще один вариант: как правило, юзер-агенты передают адрес страницы, с которой был совершен переход.
alert('Вы перешли на эту страницу с ' + document.referrer)
Ответить с цитированием
  #8 (permalink)  
Старый 18.10.2010, 15:02
Новичок на форуме
Отправить личное сообщение для Rollo Посмотреть профиль Найти все сообщения от Rollo
 
Регистрация: 16.10.2010
Сообщений: 4

Я извиняюсь, но совсем понял, как в эту ссылку параметр засунуть: хотя переход на другую страницу со страницы источника будет из разных тегов данной страницы, но ссылка страницы источника (document.referrer) будет одна и та же.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как передать значение переменной в IFRAME в поле формы JS-ом из самой страницы? DeUre Общие вопросы Javascript 14 17.12.2013 16:37
Как в IE динамически установить значение события onClick? Гость Элементы интерфейса 6 16.01.2011 23:46
Как передать значие false ссылке Bogdan808 Javascript под браузер 2 28.08.2010 16:29
Значение переменной не может привысить 30 и опуститься ниже 1-го, как сделать? libinstyle Events/DOM/Window 3 12.07.2010 23:27
как передовать и парсить значение переменной по URL? FATALITY Общие вопросы Javascript 10 25.03.2010 19:32