it-roy-ru.com

Как получить выбранное значение из выпадающего списка

Я пытаюсь получить выделенный текст, а не значение, из выпадающего списка моей начальной загрузки, но мой оператор .text () возвращает строку, содержащую все значения с символом '\ n' между ними.

Вот мой рендеринг HTML

<select class="form-control" id="SpaceAccommodation" name="YogaSpaceAccommodation">
    <option selected="selected" value="0">1-4</option>
    <option value="1">5-9</option>
    <option value="2">10-15</option>
    <option value="3">16-20</option>
    <option value="4">20+</option>
</select>

Вот мой javascript, но selectedText возвращает '5-9\n10-15\n16-20\n20 +' Я хочу, чтобы он возвращал 5-9 или 10-15 и т.д.

$('#SpaceAccommodation').change(function () {

    var selectedText = $(this).text();
});
18
user1186050

Вы можете получить текст выбранного значения с помощью $(this).find("option:selected").text().

$('#SpaceAccommodation').change(function () {
    var selectedText = $(this).find("option:selected").text();
    
    $(".test").text(selectedText);
});
<script src="https://code.jquery.com/jquery-1.6.4.min.js"></script>
<select class="form-control" id="SpaceAccommodation" name="YogaSpaceAccommodation">
    <option selected="selected" value="0">1-4</option>
    <option value="1">5-9</option>
    <option value="2">10-15</option>
    <option value="3">16-20</option>
    <option value="4">20+</option>
</select>
<div class="test"></div>

31
Nick Bartlett

Fiddle для вас

 $(document).ready(function () {
     $('.chzn-select').change(function () {
         alert( $('.chzn-select option:selected').text());
     });
 });

<select id="second" class="chzn-select" style="width: 100px">
    <option value="1">one</option>
    <option value="2">two</option>
</select>

Это основано на псевдоклассе css3 :selected. Это очень похоже на :checked , я не смог найти документы для :selected

5
J-Dizzle

На случай, если кому-то все равно, у меня есть другое решение. Я просто посмотрел на аргументы из документов. Вы можете сделать что-то вроде этого (Предполагая, что вы установили тег значения элемента option .:

 $('#type_dropdown')
                .on('changed.bs.select',
                    function(e, clickedIndex, newValue, oldValue) {
                        alert(e.target.value);
                    });
        });

Смотрите https://silviomoreto.github.io/bootstrap-select/options/

1
coolboyjules