通过html选择更改网址的最佳方法是什么?
<select>
<option selected="selected">Change to URL X</option>
<option>Change to URL Y</option>
</select>
应该使用什么Javascript?
答案 0 :(得分:6)
<script type="text/javascript">
function navigateTo(sel, target, newWindow) {
var url = sel.options[sel.selectedIndex].value;
if (newWindow) {
window.open(url, target, '--- attributes here, see below ---');
} else {
window[target].location.href = url;
}
}
</script>
<select onchange="navigateTo(this, 'window', false);">
<option selected="selected" value="http://www.example.com/#X">Change to URL X</option>
<option value="http://www.example.com/#Y">Change to URL Y</option>
</select>
target
的一些有用值可能是'window'
(当前窗口)或'top'
(打破框架集或iframe)。如果您想要打开新窗口,可以使用navigateTo(this, 'someWindow', true);
'--- attributes ---'的值是使用记录为here for Mozilla和here for IE的各种属性设置的。例如:
'height=300,width=400,top=100,left=100,statusbar=0,toolbar=1'
答案 1 :(得分:5)
如果你有jQuery,你可以做...
的javascript:
$('#select_url')。change(function(evnt){location.href = $(this).val();});
HTML:
...
答案 2 :(得分:-3)
在标题
中添加类似的内容<script language="JavaScript" type="text/javascript">
function jumpMenu(targ,selObj,restore){
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
}
</script>
,您的选择框看起来就像这样
<select onchange="jumpMenu('parent',this)>
<option selected="selected">Change to URL X</option>
<option value="http://www.example.com">Change to URL Y</option>
</select>