我有这个HTML:
<select class="business_types_select" name="business_type_id">
<option value="0" selected="selected">Select a Business Type</option>
<option value="54">Bakery</option>
<option value="55">Tobacco</option>
</select>
如果我选择Bakery然后尝试:
$(".business_types_select").val()
我得到54,但我怎么得到文本面包店?如果我试试
$(".business_types_select").text()
我明白了:
" Select a Business Type Bakery Tobacco "
答案 0 :(得分:11)
尝试:
$(".business_types_select :selected").text()
如果没有这个,.text()
的行为就像它应该的那样,这是为了带回该特定类的所有文本。将:selected
添加到选择器会将其缩小到您选择的那个。
如果您要经常对其进行操作以提高性能,请记住缓存您的选择器。
答案 1 :(得分:4)
您必须将选择器缩小为选择option
:
$(".business_types_select").find('option:selected').text();
答案 2 :(得分:2)
赞this:
$(".business_types_select > option:selected").text()
(在这里的简短示例中,我假设只有一个<select class="business_types_select" />
。我的jsfiddle示例更全面。)
答案 3 :(得分:1)
$(".business_types_select option:selected").text()
这将仅返回所选选项的文本
答案 4 :(得分:0)
$(".business_types_select").find('option:selected').text();