Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Есть ли в js подобие parse_url? 
:(
    Опции темы
iDrum
Дата 28.10.2006, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 5.5.2006

Репутация: нет
Всего: нет



нужно следить за данными передеваемые гетом.в пхп проще заимением parse_url.
Вообщем ,как получить значение переменной в js из адресной строки.
Заранее спасибо
PM MAIL   Вверх
SelenIT
Дата 28.10.2006, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Есть, это объект location.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Avb
Дата 30.10.2006, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 115
Регистрация: 5.7.2006

Репутация: 4
Всего: 13



Такая функция реализована в библиотеке prototype.js (возможно есть и в других). Можно использовать эту библиотеку.
Если подключение библиотеки по каким-то причинам нежелательно, то вот я тут сделал выборку:
Код

String.prototype.parseQuery = function (){
    var pairs = this.match(/^\??(.*)$/)[1].split('&');
    return pairs.inject({}, function(params, pairString) {
      var pair  = pairString.split('=');
      var value = pair[1] ? decodeURIComponent(pair[1]) : undefined;
      params[decodeURIComponent(pair[0])] = value;
      return params;
    });
}

String.prototype.parseQuery = String.prototype.toQueryParams;

Array.prototype.inject = function(memo, iterator) {
    this.each(function(value, index) {
      memo = iterator(memo, value, index);
    });
    return memo;
}

Array.prototype.each = function(iterator) {
    for (var i = 0; i < this.length; i++)
      iterator(this[i]);
}


Подключай всю библиотеку или только этот код и используй:
"строка".toQueryParams() или алиас  "строка".parseQuery().
Возвращает эта функция ассоциативный массив.

"строка" - строка параметров URL-а, со знаком '?' или без него. В случае, если нужно разобрать текущий URL, то это location.search
Например, var params = location.search.parseQuery();
Доступ к значениям как обычно:
params['имя_параметра']
params.имя_параметра

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0427 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.