2012-01-28 69 views
3

我想製作一個按鈕,將我重定向到另一個頁面。Onclick href in html

代碼:

<div align="right" ><input type="submit" id="logout" onclick="location.href=/login?dis=yes" value="Sign Out" ></div><BR> 

但是當我按下按鈕,我沒有得到任何重定向到另一個頁面。

有什麼想法爲什麼?

回答

6

即使語法通過添加引號解決,您當前的代碼也會創建一個在禁用JavaScript時不起作用的按鈕。在簡單和更安全的做法是一個小的HTML表單:

<form action="/login"> 
<input type=hidden name=dis value=yes> 
<input type=submit value="Sign Out"> 
</form> 

爲了達到理想的造型,你可以添加以下樣式:

form { display: inline; float: right; } 
0

您的JavaScript代碼無效。

使用此:

<div align="right" ><input type="submit" id="logout" onclick="location.href='/login?dis=yes'" value="Sign Out" ></div><BR> 
6

也許嘗試這種使用類型=「按鈕」,並把該位置周圍的報價。

<div align="right"><input type="button" id="logout" onclick="location.href='/login?dis=yes'" value="Sign Out" ></div> 
0
  • 將目標window.location的,所以你得到正確的目標改變。
  • add return false;因此提交按鈕不會嘗試提交表單。
  • 將URL放在單引號中以避免解析錯誤。

<輸入類型= 「提交」 ID = 「註銷」 的onclick = 「window.location.href = '/ DIS登錄= YES?';返回false;」值=「退出」 >

您的按鈕,按設計,將無法工作的主要原因是因爲它是一個「提交」按鈕。當你點擊它時,它試圖在運行你的onclick動作後執行提交動作,本質上忽略了onclick動作。

如果您必須使用「提交」按鈕,您可以通過使用type =「button」按鈕或上面列出的解決方案來解決此問題。

0

試試這個

window.location='/login?dis=yes'; 

 <div align="right" > 
<input type="submit" id="logout" 
    onclick="window.location='/login?dis=yes';" value="Sign Out" ></div> 
2

不使用

<input type="submit" /> 

,因爲這是用來發布形式,而應該使用

<input type="button" onclick='location.href="/login?dis=yes"'/> 

重定向或純錨標記

<a href="/login?dis=yes">Sign Out</a> 
0

我會告訴你,每個人同樣的事情其他人有。而不是使用: location.herf你應該使用: window.location 希望這可以幫助你!