2015-05-15 1 views
0

У меня есть выпадающий выберите тег как так:Как запустить функцию, щелкнув опцию в выпадающем теге select?

<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 link 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

очень хорошо, но это выполняется, когда я нажимаю выпадающее меню:/i только хочу, чтобы он запускался, когда я нажимаю на опцию в раскрывающемся списке ... – thatOneGuy

+0

Браузер и его версию вы проверили? –

+0

глупый я посмотрел на него в хроме, когда, очевидно, его firefox. Почему вы сделали это так, что он зависит от браузера? – thatOneGuy

1

Хей,

Это может быть сделано с JQuery

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

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

не стоило бы вам менять значение выпадающего списка? не просто нажмите его? – thatOneGuy

+0

Да, это правильно, я обновил свой ответ выше – Glenn

Смежные вопросы