我试图从多个选择选项中提取文本,我已经尝试用以下代码提取每个选项的值,但是当我使用.text()时,我得到了所有的选项文本,而不是选择的文本。
$('#mySelects > .form-group select').each(function(){
alert($(this).val());
});下面是HTML的一个示例
<div id="mySelects" class="panel-body">
<div class="form-group">
<select name="select-1" id="select-1" class="form-control">
<option selected="selected" value="0">Please Select</option>
<option value="11700599">Test Value 1</option>
</select>
</div>
<div class="form-group">
<select name="select-2" id="select-2" class="form-control">
<option selected="selected" value="0">Please Select</option>
<option value="11700467">Test Value 2</option>
</select>
</div>我的当前jQuery将返回:0, 0,我希望它返回:"Please Select", "Please Select" (或任何选定的文本)
发布于 2014-06-28 16:58:13
这是因为当对val()元素调用时,<select>将返回所选子<option>的<option>属性。但是,当您在.text()上调用$(this)时,您将获取整个<select>元素本身中的所有文本节点。所以,用这个代替:
$('#mySelects > .form-group select').each(function(){
var $optText = $(this).find('option:selected');
alert($optText.text());
});这里有一个概念的证明:http://jsfiddle.net/teddyrised/7vvX7/
https://stackoverflow.com/questions/24469027
复制相似问题