Jump to content
  • 0

Сылки в списке html формы


Fastfold
 Share

Question

Здравствуйте, мне нужно сделать выбор сайтов в списке html формы. Смысл этого списка - дать возможность перейти на выбранный сайт.

Осуществить переход по ссылки из списка формы не составила труда.

<form name="site" class="form-inline">     <select name="list" class="form-control" onChange="top.location.href = this.form.list.options[this.form.list.selectedIndex].value; return false;">          <option>Open web-site</option>          <option value="http://www.site1.ru">Site 1</option>	  <option value="http://www.site2.ru">Site 2</option>     </select></form>

При нажаний мы переходим на нужный сайт, в этом же окне. Но если я нажимаю вернутся назад ( в браузере ). Я возвращаюсь на сайт и вижу выбранный элемент за место Open web-site.

Как сделать чтобы у меня всегда оставался выбран Open web-site. ? Надеюсь смог обьяснить что нужно сделать. Спасибо.

 

PS. Прошу прошения за ошибки.

Edited by Fastfold
Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0
<option selected>Open web-site</option>

Кстати:

top.location.href = this.form.list.options[this.form.list.selectedIndex].value; return false;

А не проще сделать вот так:

location.href = this.value;return false;

 

Не так не выходит. Сделал так

<script type="text/javascript">    function OpenSite(DropDown) {        var TargetIndex = DropDown.selectedIndex;        DropDown.selectedIndex = 0;        window.location.href = DropDown.options[TargetIndex].value;    }</script>
<form name="site" class="form-inline">     <select name="list" class="form-control" onChange="OpenSite(this)">          <option>Open web-site</option>          <option value="http://www.site1.ru">Site 1</option>	  <option value="http://www.site2.ru">Site 2</option>     </select></form>

Осталось сделать, чтоб открыть ссылку в новом окне. Кто подскажет как ? :D

Link to comment
Share on other sites

  • 0
window.open('http://site.ru','_blank');

Это не совсем то. Именно в моем скрипте как открыть в новом окне ?

 

Вот эта строка отвечает за открытие ссылки.

window.location.href = DropDown.options[TargetIndex].value;
Edited by Fastfold
Link to comment
Share on other sites

  • 0

//и можно сделать проверку на 0

function OpenSite(DropDown) {

var TargetIndex = DropDown.selectedIndex;

if( ! TargetIndex) return false;

DropDown.selectedIndex = 0;

window.open(DropDown.options[TargetIndex].value,'_blank');

}

Чтобы не срабатывало открытие окна если выбрали строку Open web-site Edited by wwt
Link to comment
Share on other sites

  • 0

Ее не возможно выбрать из за скрипта, он всегда делает Open web-site активным.

Ну для подстраховки можно просто указать <option disabled="disabled">

не всегда. в вашем скрипте вы устанавливаете индекс на 0 только в момент события, но не в момент загрузки документа. ДЛя того чтобы определенный пункт был выбран по дефолту есть атрибут selected. А в момент срабатывания события можно проверить не выбран ли этот дефолтный пункт и если выбрали его, то не открывать окно:

if( ! TargetIndex) return false;
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy