Селектор выпадающего меню, перейдите к цели = & # 8220; _blank & # 8221;
-
07-07-2019 - |
Вопрос
У меня есть выпадающий селектор, и мне нужно изменить его так, чтобы target = " _blank " поэтому открывается новая вкладка.
Вот текущий код:
<SCRIPT TYPE="text/javascript">
<!--
function dropdown(mySel)
{
var myWin, myVal;
myVal = mySel.options[mySel.selectedIndex].value;
if(myVal)
{
if(mySel.form.target)myWin = parent[mySel.form.target];
else myWin = window;
if (! myWin) return true;
myWin.location = myVal;
}
return false;
}
//-->
</SCRIPT>
<div id=countryselector>
<FORM
ACTION="../cgi-bin/redirect.pl"
METHOD=POST onSubmit="return dropdown(this.gourl)">
<SELECT NAME="gourl">
<OPTION VALUE="">Select a Country...
<OPTION VALUE="http://google.com">USA
<OPTION VALUE="http://google.ca">Canada
</SELECT>
<INPUT TYPE=SUBMIT VALUE="Go">
</FORM>
</div>
Заранее спасибо
Решение
function dropdown(mySel) {
var myVal = mySel.options[mySel.selectedIndex].value;
if (myVal) {
if (mySel.form.target) {
window.open(myVal, mySel.form.target, '_attributes_');
} else {
window.location.href = myVal;
}
}
return false;
}
Список _attributes _
можно найти здесь для Mozilla. или здесь для IE . В некоторых доступных параметрах есть несколько отличий, поэтому лучше всего просмотреть оба списка.
Вы также можете оставить третий параметр вне вызова функции, и он должен вести себя как target = " _blank "
в < форме >
:
// behaves as if you submitted <form ... target="_blank">:
window.open(myVal, mySel.form.target);
Вот пример, использующий набор _attributes _
, как описано в приведенных ссылках, для открытия окна определенного размера и позиции с определенными частями пользовательского интерфейса:
// this opens a window that is 400 pixels by 300 pixels
// it is positioned 100 pixels from the top and the left
// it will have no statusbar, no menu but the new window will have a toolbar:
window.open(myVal, mySel.form.target,
'height=300,width=400,top=100,left=100,statusbar=0,menu=0,toolbar=1');
Не связан с StackOverflow