2015-05-15 19 views
0

我有一個下拉選擇標籤,像這樣:我使用如何通過單擊下拉選擇標籤中的選項來運行功能?

<select id="thisDropDown" onChange="doSomething()"> 
     <option></option> 
     <option>classif</option> 
     <option>status</option>  
</select> 

通知的onChange();

我需要的是在我的下落所以它運行的向下再單擊某個選項的能力函數再次(因爲我可以改變其他影響運行此功能的結果的下拉菜單)。

我試過onselect()onclick()但似乎沒有工作。我必須寫一些腳本嗎?我一直在網上尋找,但似乎無法找到可行的事情。

由於提前,對不起,如果類似的事情之前已經

+1

你想要做的事不清楚。你的意思是你想再次運行'doSomething()'函數,即使'change'事件沒有被提升? –

+0

是的。我不想使用onChange。我希望使用像onClick這樣的東西,以便當我再次選擇相同的選項(而不是更改它)時,它會再次運行該函數。希望有幫助 – thatOneGuy

+2

因此,如果用戶更改其他下拉菜單中的一個,則需要從此下拉列表中重新選擇相同的值以刷新其他值?這聽起來更像是一個設計問題。 – artm

回答

3

我們可以做到這一點,但與需要小的調整基於瀏覽器

JSFiddle鏈接https://jsfiddle.net/0kxe6br7/2/

var dom = "select#thisDropDown"; 
var is_firefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1; 
if(is_firefox){ 
dom+=" option"; 
} 

$(dom).on("click",function(event) { 
    console.log($(event.currentTarget).val()); 
}); 
+0

以上非常好,但是這也運行時,我點擊下拉:/我只希望它運行時,我點擊下拉選項... – thatOneGuy

+0

瀏覽器及其你檢查過它的版本嗎? –

+0

愚蠢的我看着它在鉻時顯然是它的Firefox。你怎麼做到這一點,所以它依賴於瀏覽器? – thatOneGuy

1

HEJ有人問,

這可以用jQuery做

$('#thisDropDown').on('mouseup', function() { 

    alert('select option'); 
}); 
+0

你不需要改變下拉的值嗎?不只是點擊它? – thatOneGuy

+0

是的,這是正確的,我更新了我的答案 – Glenn

相關問題