Вызов функции на основе раскрывающегося списка

У меня есть следующий выпадающий список

<select onchange="myFunc(argument here)" id="propertydropdown">
<option value="tags">blah</option>
<option value="tags2">blahblah</option>
<option value="tags3">blahblahblah</option>
</select>

как мне получить аргумент, который будет значением выбранной в данный момент опции?


person Lemonio    schedule 08.08.2013    source источник
comment
@Bergi - ^^^ звучит как ответ!   -  person adeneo    schedule 09.08.2013
comment
возможный дубликат jQuery get value of select onChange или Как получить выбранное значение из раскрывающегося списка с помощью JavaScript?, если вы предпочитаете вопрос, не относящийся к jQuery (ответ тот же)   -  person Bergi    schedule 09.08.2013


Ответы (2)


Просто myFunc(this.value), поскольку this == document.getElementByID("propertydropdow") в обработчик

person Community    schedule 08.08.2013
comment
да вот и ответ спасибо! - person Lemonio; 09.08.2013
comment
как бы я это сделал, если у меня есть ‹input onchange = tcUpdate (аргумент) type = color name = favcolor› - person Lemonio; 09.08.2013
comment
@Lemonio: На самом деле это то же самое? - person Bergi; 09.08.2013
comment
тогда я не думаю, что мой onchange работает, хотя, возможно, я просто делаю что-то еще не так - person Lemonio; 09.08.2013
comment
nvm нашла обходной путь - person Lemonio; 09.08.2013
comment
если текст содержит пробелы, я могу получить доступ только к первому слову - person P-RAD; 08.12.2014

Я не уверен, как вы могли бы передать выбранное значение в качестве аргумента, но вы могли бы использовать внутри самого обработчика this для определения значения (this будет выбранным):

function myFunc() {

    var value = this.options[ this.selectedIndex ].value;

   // ...do stuff

}

Возможно, вы даже сможете сделать onclick="myFunc( this.options[ this.selectedIndex ].value );", но я этого не пробовал.

person SimonR    schedule 08.08.2013