通常我使用$(“#id”).val()来返回所选选项的值,但这一次它不起作用。 所选标记的id为aioConceptName

html代码

<label for="name">Name</label>
<input type="text" name="name" id="name" />

<label for="aioConceptName">AIO Concept Name</label>
<select id="aioConceptName">
    <option>choose io</option>
    <option>roma</option>
    <option>totti</option>
</select>

当前回答

试试这个价值…

$("select#id_of_select_element option").filter(":selected").val();

或者这个用于文本…

$("select#id_of_select_element option").filter(":selected").text();

其他回答

如果你想抓取'value'属性而不是文本节点,这将为你工作:

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

使用jQuery,只需添加一个更改事件,并在该处理程序中获得选定的值或文本。

如果您需要选定的文本,请使用以下代码:

$("#aioConceptName").change(function () {
    alert($("#aioConceptName :selected").text())
});

或者如果您需要选择的值,请使用以下代码:

$("#aioConceptName").change(function () {
    alert($("#aioConceptName :selected").attr('value'))
});

要获取具有相同class= name的select,您可以这样做,以检查选择选项是否被选中。

var bOK = true;
$('.optKategorien').each(function(index,el){
    if($(el).find(":selected").text() == "") {
        bOK = false;
    }
});

试试这段代码::)

得到的值:

 $("#Ostans option:selected").val() + '.' + $("#shahrha option:selected").val()

得到文本:

 $("#Ostans option:selected").text() + '.' + $("#shahrha option:selected").text()

你可以这样调试:

console.log($('#aioConceptName option:selected').val())