jQuery从下拉菜单中选择选项

通常我使用$("#id").val()返回所选选项的值,但这次不起作用。 所选标签具有id aioConceptName

html代码

<label>Name</label>
<input type="text" name="name" />
<select id="aioConceptName">
    <option>choose io</option>
    <option>roma</option>
    <option>totti</option>
</select>

对于下拉选项,你可能需要这样的东西:

var conceptName = $('#aioConceptName').find(":selected").text();

val()没有做到这一点的原因是因为单击一个选项不会改变下拉列表的值 - 它只是将:selected属性添加到选择的选项,该选项是下拉菜单的子选项。


设置每个选项的值

<select id="aioConceptName">
    <option value="0">choose io</option>
    <option value="1">roma</option>
    <option value="2">totti</option>
</select>

$('#aioConceptName').val()不起作用,因为.val()返回value属性。 要使它正常工作,必须在每个<option>上设置value属性。

现在你可以调用$('#aioConceptName').val()而不是所有这些:selected被其他人建议:selected巫术。


我偶然发现了这个问题,并开发了一个更简洁的Elliot BOnneville的答案:

var conceptName = $('#aioConceptName :selected').text();

或一般:

$('#id :pseudoclass')

这为您节省了额外的jQuery调用,一次性选择所有内容,并且更清晰(我的意见)。

链接地址: http://www.djcxy.com/p/41409.html

上一篇: jQuery Get Selected Option From Dropdown

下一篇: Prevent Highlight of Text Table