2013-04-17 213 views
0

我有一個看起來像這樣的HTML元素:事件與Safari瀏覽器

<select class="indiv_unit" name="indiv_unit" id="indiv_unit"> 

,我試圖捕獲選擇事件(當用戶選擇)在JavaScript/Backbone.js的查看,如下所示:

events : { 

    "click select.indiv_unit" : 'changeIndivUnit', 
}, 

Safari和Firefox瀏覽器能夠捕獲選擇事件,但Chrome不支持。我懷疑Chrome的問題在於,我並不是「真正地」捕捉選擇選項,而是在選擇框中捕捉點擊。我試過這樣的事情:

"select select.indiv_unit" 

但這並不奏效,而且看起來不正確。有人能指出正確的方法來檢測可在所有瀏覽器中工作的選擇事件嗎?

+0

不符合'更改'事件是否符合您的需求? – Loamhoof

+0

@Loamhoof,是的,我只需要知道它改變了。那將是什麼樣子? 「更改select.indiv.unit」? – sploiber

+0

是的,我認爲這應該工作。我正在測試它(因爲我確定你正在做它)。 – Loamhoof

回答

0

將其更改爲:

'change select.indiv_unit': 'changeIndivUnit' 

你可以用http://jsfiddle.net/T8Dsf/測試。

+0

太棒了!非常感謝。任何解釋 - 爲什麼「點擊」沒有這樣做,但「變化」 - 會感激地收到。感謝您的快速回復。 – sploiber

+0

@sploiber我必須承認,如果你能重現那種行爲,我很樂意去尋找原因。如果我試圖在上面的jsfiddle中用'click'來替換'change',它似乎工作得很好:o嗯,至少你的問題是固定的。 – Loamhoof

+0

我不知道爲什麼它不適用於Chrome。我懷疑我有很多東西需要了解不同的瀏覽器功能。我主要在Safari上工作,但Chrome和Firefox可以做非常不同的事情。我現在離開IE瀏覽器。再次感謝! – sploiber