我试图从我的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
复制相似问题