2013-02-22 29 views
0

下面的选择框完全正常。它根据选定的选项重定向。HTML/Javascript:所选字段的URL重定向

<select name="redirect" onChange="window.document.location.href=this.options[this.selectedIndex].value;" value="GO"> 
    <option selected="selected">Select One</option> 
    <option value="http://www.google.com">Google</option> 
    <option value="http://www.gmail.com">Gmail</option> 
</select> 

但我有一个复杂的下拉框是这样的:

<select name="menu" onChange="window.document.location.href=this.options[this.selectedIndex].value;" value="GO"> 
    <option value="">Select Project</option> 
    <option value="http://www.google.com">Type 1</option> 
    <option value="Type 2">Type 2</option> 
    <option value="Type 3">Type 3</option> 
</select> 

我知道上面的选择框是没有意义的,因为我使用的onChange重定向和使用类型2 & 3型作为选项。

问题:当我选择类型1时,如果选择类型2或类型3,它应该重定向到google其他类型,它的值应该提交给我的表单。

我们该如何做到这一点。谢谢

回答

1

你应该尝试这样的事:

<select name="menu" onChange="javascript: if (this.value == 'http://www.google.com'){window.document.location.href=this.options[this.selectedIndex].value;}else{document.forms['myform'].submit();} " value="GO"> 
<option value="">Select Project</option> 
<option value="http://www.google.com">Type 1</option> 
<option value="Type 2">Type 2</option> 
<option value="Type 3">Type 3</option> 
</select> 

PS:这里:document.forms [ 'myForm的']提交(); ....你改变myForm会与你的表单名称-ID。 ;)

Saludos

+0

在你的onChange的其他部分,而不是发送ALER我需要将值存储在选择标记中。 我不想发送任何警报我要么重定向,如果它的价值谷歌或存储剩下的。 – Supersonic 2013-02-22 13:00:29

+1

我把这些提示放在了一个例子的模式中......而不是提醒你可以放置你需要的代码;)....我认为你可以打开...对不起......我要编辑答案 ;) – Hackerman 2013-02-22 13:21:30

1

HTML是这样的,只要你想:

<form name="fm_memu"> 
    <input type="text" name="ipt_menu" value=""/> 
</form> 
<select name="menu" onChange="if(this.selectedIndex){if(this.selectedIndex < 2){window.document.location.href=this.value;}else{window.document.forms['fm_memu']['ipt_menu'].value=this.value;}}" value="GO"> 
    <option value="">Select Project</option> 
    <option value="http://www.google.com">Type 1</option> 
    <option value="Type 2">Type 2</option> 
    <option value="Type 3">Type 3</option> 
</select>