2010-10-19 154 views
2

首先,代碼可能會吸引人,因爲我是新的JQuery。我有這樣的HTML:JQuery下拉菜單適用於Firefox,但不適用於谷歌瀏覽器

<select name="numberItems" id="id_numberItems"> 
<option value="1" selected="selected">1</option> 
<option value="2">2</option> 
<option value="3">3</option> 
<option value="4">4</option> 
<option value="5">5</option> 
</select> 
<fieldset class="dropdownList"> 
    [...] 
</fieldset> 
<fieldset class="dropdownList"> 
    [...] 
</fieldset> <!-- This fieldset is repeated 5 times --> 

這是我的jQuery代碼:

​​

此下拉事情是工作在Firefox,而不是在谷歌瀏覽¿爲什麼呢?由於

+0

使用Chrome,「Ctrl + Shift + J」 - >控制檯打開您的頁面,點擊下拉菜單,然後查看控制檯中出現了什麼問題。也許這可以提供一些有用的信息。 – jolt 2010-10-19 08:31:06

+0

你有一個演示頁面嗎? – Petah 2010-10-19 08:36:02

+0

我試過CTRL + SHIFT + J,但我不知道熱調試內聯腳本,它不是在單獨的文件中。 Firefox中的FireBug調試順利進行。 – maraujop 2010-10-19 08:40:03

回答

1

附上您的下拉列表功能的change -event你下拉的,它應該工作,你希望的方式(或我的水晶球顯示我...)

$("#id_numberItems").change(function() { dropDown($('#id_numberItems').val()) }); 

example on jsbin.com

+0

你是對的,你能告訴我爲什麼會發生這種情況嗎?謝謝 – maraujop 2010-10-19 10:02:44

+0

我不確定規範說的關於select元素的onclick行爲。當您單擊其他瀏覽器的選項時,Chrome將不會調用該選擇的點擊事件。在頁面加載後的第一次點擊時,由於「預選」,您將得到「1」作爲值。下次單擊選擇時,您將獲得前一個選擇的值,依此類推。所以如果沒有特別的理由,你應該總是使用onchange事件。 – Andreas 2010-10-19 11:06:17

+0

更改事件在可訪問性方面也是更好的選擇,因爲無論用戶是通過鼠標或鍵盤與頁面交互,它都會被調用。 – 2012-02-27 15:00:29

相關問題