#jquery #html #input #drop-down-menu #if-statement
#jquery #HTML #ввод #выпадающее меню #if-оператор
Вопрос:
Я пытаюсь выполнять различные действия со значением, помещенным в поле ввода, в зависимости от выбора, сделанного в двух выпадающих списках. В данном случае речь идет о скорости преобразования. У меня нет проблем с получением значения поля ввода, но я немного озадачен тем, как я могу получить то, что было выбрано в раскрывающихся окнах — похоже, это работает по-другому. На данный момент все по умолчанию использует первый оператор if для преобразования кадров в секунду в миль / ч, даже если это не выбрано.
На данный момент я только «реализовал» математику для преобразования кадров в секунду в миль / ч / км / ч / МС, и, похоже, в итоге я получу множество инструкций if else, поэтому также интересно, может ли быть лучший способ для этого.
Если вы остались в замешательстве, я бы посоветовал просто взглянуть на это:http://jsfiddle.net/Deva/RPkpW /
Ответ №1:
Используйте .val()
метод jQuery для получения значения выпадающего списка.
Например, чтобы получить значение выбранного <option>
в <select name="types">
,
var selected = $('#fpsConvForm').find('select[name="types"]').val();
В вашей разметке не указан value
атрибут для <option>
элементов, поэтому (согласно спецификации) значение этих элементов по умолчанию равно тексту в тегах.
Комментарии:
1. это здорово. я обновил jsfiddle, и у меня все еще есть проблемы. я знаю, что это определенно дает правильное значение, как я проверил, распечатав их. следовательно, я предполагаю, что у меня где-то неправильная логика, поскольку предполагается, что первое утверждение if всегда правильное?
2. исправьте это — я использовал один,
=
а не два, т.==
я заметил, что 3 также работает. какие там правила?
Ответ №2:
это должно работать так же, как получение его из полей ввода, вы можете присвоить select идентификатор точно так же, как вы могли бы присвоить поле ввода, используя $ («#idhere») и извлекать значение из выбранного выпадающего списка. Разница в том, что вы присваиваете значения параметрам (см. Ниже)
<SELECT id="example">
<OPTION VALUE=a SELECTED>example1
<OPTION VALUE=b>example2
<OPTION VALUE=c>example3
<OPTION VALUE=d>example4
</SELECT>
значение, которое возвращается при нацеливании на это с помощью $ («#example»), будет эквивалентно значению любого выпадающего списка, выбранного в данный момент.
Ответ №3:
Вот некоторый рабочий код, который покажет вам, как с ним работать
http://jsfiddle.net/ppumkin/UwddM/
Измените, получите и определите, что делать, на основе значений выпадающих списков.