为什么这个JavaScript函数没有重定向到选定的选项值?

时间:2010-12-22 07:59:14

标签: javascript select

我有一个JavaScript函数:

function redirect(location) {
    window.location.href=location;
}

我正在使用它:

<select onChange="redirect(this.options[this.selectedIndex].value)">
<option value="http://mysite.com/videos">One</option>
<option value="http://mysite.com/music">Two</option>
</select>

我期待它重定向到所选的选项值,但似乎什么也没做? - 记得我是JavaScript新手。

希望有人可以帮忙! :)

4 个答案:

答案 0 :(得分:0)

试试这个:

<select onChange="redirect(this.value)">

答案 1 :(得分:0)

试试这个

<script>
function redirect() {
    var location=document.getElementById("i").value;
    window.location.href=location;
}

</script>
<select onChange="redirect()" id="i">
<option value="http://mysite.com/videos">One</option>
<option value="http://mysite.com/music">Two</option>
</select>

答案 2 :(得分:0)

您的代码本身功能正常(我尝试过)。

您在哪里放置了功能定义? 页面上还有其他任何javascript代码吗?

您在哪个浏览器中进行测试? 如果您在Firefox中运行它,请检查错误控制台(工具 - >错误控制台)。

我还注意到Internet Explorer 8阻止了这个javascript,我要检查允许阻止的内容才能使用。

答案 3 :(得分:0)

可能是因为location是调用window.location的简短方法,因此只需重命名输入参数 - _locationnewLocationloc,无论如何

<强>更新

不,这应该有效。只有

<select onChange="redirect(this.options[this.selectedIndex].value)">
<option value="http://mysite.com/videos">One</option>
<option value="http://mysite.com/music">Two</option>
</select>
<script type="text/javascript">
function redirect(location) {
    window.location.href=location;
}
</script>
页面上的

给了我想要的结果,所以错误可能在某处 - 只需给我们更多代码!