2015-08-20 4 views
1

Я ищу через много сайтов, но я не Finde правильного решения, поэтому Я не реально, если его можно знать ...Выберите значение параметра по URL-адресу?

У меня есть выпадающий список:

<select name="filter"> 
    <option selected value="">All</option> 
    <option value="newest">Newest</option> 
</select> 

... и некоторые divs с информацией. Итак, классический способ - нажать выпадающий список и выбрать опцию. Но то, что я хочу, чтобы выбрать значение раскрывающийся по URL ...

Например: Если «URL + новейший»> выберите «фильтр» = значение «новейший»

пример

URL: www.mypage .com/отели & новейшие

Возможно ли это? Любой простой способ?

+1

АДРЕС что - текущая страница? «новейший» не будет действительным URL, поэтому я не уверен, что вы имеете в виду. – cjol

+0

Да, это - вам нужно проанализировать текущий URL-адрес с помощью javascript и сделать выбор «вручную» в соответствии с содержимым URL-адреса. Взгляните на [этот пост] (http://stackoverflow.com/questions/2090551/parse-query-string-in-javascript). – Lix

+0

@Hephistocles: Я добавляю пример url сверху ... (at) Lix: Хорошо, я посмотрю. – Pepe

ответ

3

Вы могли бы сделать что-то вроде этого:

// Run on document ready 
$(function() { 
    // If the current url contains the string '&newest' 
    if (document.location.href.indexOf('&newest') > -1) 
    { 
     // Use jQuery to set the value of the select box to 'newest' 
     $('[name=filter]').val('newest'); 
    } 
}); 

Затем просто добавить дополнительные еще/если заявления по мере необходимости, если есть больше вариантов вам нужно, чтобы удовлетворить ...

+0

Thx для поддержки ... Я проверю это ... – Pepe

+0

Хорошо, это решение работает я, большой thx !! – Pepe

0

Чтобы получить значение строка запроса URL, сделать что-то, как было предложено Lix в комментариях:

var item = document.location.href.match(/&(.*)$/)[1] 

чтобы потом сделать выбор, а что-то вроде этого (обратите внимание, вам необходимо установить ID = «фильтр» на выбор:

​document.getElementById('filter').value = item;​​​​​​​​​​ 

Обратите внимание, что обычно URL используется хэш для этого, так что ваш URL будет выглядеть следующим образом, вместо: `www.mypage.com/hotels#newest». С вашего URL в этом формате, вам не нужно делать какие-либо совпадения регулярных выражений, вы можете просто сделать

var item = document.location.hash.substr(1) 

(.substr(1) бит просто избавиться от ведущего диез)

+0

Также thx для поддержки - я тоже проверю этот путь. – Pepe

+0

Преимущество этого решения в том, что вам не нужно добавлять дополнительный код, если вы добавляете новые параметры. Если у вас есть только один вариант, о котором можно беспокоиться («новейший»), то HaukurHaf, вероятно, проще! – cjol

Смежные вопросы