Как сделать пункт в выпадающем списке по умолчанию, после перехода по ссылке?
Добрый день.
Есть форма со списком select. В ней несколько пунктов option. При переходе по ссылке с другой страницы необходимо делать так, чтобы выбирался нужный пункт автоматически (по умолчанию). К примеру, есть список - Кот - Кошка - Динозавр. При переходе с главной страницы по ссылке, например, "Кошка", в списке было выбрано - Кошка. И т.д. Как это сделать? Заранее спасибо. |
Цитата:
|
ммм.. Спасибо, а можно поподробнее?
|
var testLnk = location.href;
далее ищите свою ссылку в списке - делайте попытки -выкладываете минимальное HTML и скрипты - Вам помогут |
Damian, предположим вы на странице http://domain.ru/?cat
window.onload = function () { var opt = (window.location.search).replace("?", ""); var select = document.getElementById("id вашего select").options; for (i=0; i < select.length; i++) { if (select[i].value == opt) { break; } } document.getElementById("id вашего select").selectedIndex = i; } http://javascript.ru/window-location |
Мягко говоря, я не очень хорошо разбираюсь в JavaScript :cray:
Не могли бы вы, если не затруднит конечно, дополнить мой код нужным? Ссылка на главной странице: <a href="http://site/forma">Собаченька</a> Форма на внутренней: <select> <option>Собаченька</option> <option>Котэ</option> </select> |
Damian, в ссылку еще что-нибудь нужно добавить, типа
<a href="http://site/forma?dog">Собаченька</a> тогда window.onload = function () { var opt = (window.location.search).replace("?", ""); var select = document.getElementById("sel").options; for (i=0; i < select.length; i++) { if (select[i].value == opt) { break; } } document.getElementById("sel").selectedIndex = i; } <select id="sel"> <option value="dog">Собаченька</option> <option value="cat">Котэ</option> </select> а если ниспадающий список статический, т.е.в нем всегда одни и те же пункты на одних и тех же местах, то можно создать объект (ассоциативный массив) и через него подставлять сразу в selectedIndex номер элемента списка |
Что-то не работает(((
У меня статичная форма с неизменяемыми полями. Перед ней я поставил window.onload = function () { var opt = (window.location.search).replace("?", ""); var select = document.getElementById("sel").options; for (i=0; i < select.length; i++) { if (select[i].value == opt) { break; } } document.getElementById("sel").selectedIndex = i; } Но, перейдя по ссылке, список остаётся как есть. |
Полагаю, что я вообще всё не так сделал?
|
Damian, скрипт можете поместить в любом месте страницы, не забывая его заключать в теги <script></script>
вы ссылку(-и) и ниспадающий список поправили в соответствии с постом №7? |
Часовой пояс GMT +3, время: 09:33. |