2010-12-22 52 views
0

我有一個JavaScript函數:爲什麼這個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新手。

希望有人能幫助! :)

+0

好 - 我在Chrome和FF上試過你的代碼,它似乎工作正常。你試過哪個瀏覽器?我希望在你測試的代碼中沒有錯別字。 – anirvan 2010-12-22 08:07:36

回答

0

試試這個:

<select onChange="redirect(this.value)"> 
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> 
0

你的代碼本身的功能(我想)。

你在哪裏放置函數定義? 頁面上是否有其他JavaScript代碼?

在哪個瀏覽器中測試? 如果您在Firefox中運行它,請檢查錯誤控制檯(Tools-> error console)。

我也注意到,Internet Explorer 8阻止這個JavaScript,我要檢查允許阻止的內容爲此工作。

0

可能是因爲location是調用window.location短的路,所以只重命名您的輸入參數 - _locationnewLocationloc,任何其他人。

UPDATE

不,這應該工作。由於只有

<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> 

在頁面上給了我想要的結果,這樣的錯誤可能是周圍的地方 - 只是給我們更多的代碼!

相關問題