2011-03-01 32 views
5
<select class="input" style="width:200px"> 
     <option>---</option> 
     <option onclick="window.location="link.php">one</option> 
     <option onclick="window.location="link2.php"">two</option> 
    </select> 

它在Chrome中不起作用,它在opera/mozilla等中工作。有什麼建議?Onclick在Chrome中不起作用

+2

是的,不要使用'onclick'屬性。 – BoltClock

+7

每次有人使用---作爲選項時,UI設計者會發生心臟病。請使用optgroup。 – 2011-03-01 22:07:25

+2

@WTP'optgroup'如何幫助我有一個空的默認選項? – Tomalak

回答

19
<select class="input" onchange="window.location.href = this.value" style="width:200px"> 
     <option>---</option> 
     <option value="link.php">one</option> 
     <option value="link2.php">two</option> 
    </select> 

我知道它不完全相同......但是對選擇列表的選項有點擊事件並不是好的做法。而不是onchange,你也可以onclick ...但在我看來,onchange實際上是這樣做的方式。

3

onclick屬性中的雙引號是不是單引號?

+0

爲什麼當前的代碼在Gecko和Presto中工作呢? – 2011-03-01 22:11:08

+0

@Radek S:我能想到的一件事是解析器寬大處理(閱讀:smartassery)。 – BoltClock

+0

@BoltClock我真的不相信Gecko比WebKit更聰明。哦,也許是。 :) – 2011-03-01 22:14:08

4

可能最安全的方法是使用select元素的onchange事件,並使用它的值來確定要採取的操作。我不認爲onclick在IE中可以選擇。

0

onclick不會按照您嘗試使其工作的方式工作,您將不得不考慮瀏覽器如何處理select對象的差異。我建議您使用select對象上的onchange事件,然後測試所選選項。請注意,這些事件在不同的瀏覽器上觸發不同。

相關問題