我试图从我的bootstrap下拉列表中获取选定的文本,而不是值,但我的.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();
});发布于 2015-04-25 06:37:31
您可以使用$(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>
发布于 2015-04-25 06:42:24
Fiddle for you
$(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的文档
发布于 2016-09-28 05:19:04
如果有人关心,我有另一个解决方案。我只是看了一下文档中的论点。您可以这样做(假设您已经设置了option元素的value标记。
$('#type_dropdown')
.on('changed.bs.select',
function(e, clickedIndex, newValue, oldValue) {
alert(e.target.value);
});
});https://stackoverflow.com/questions/29858641
复制相似问题