通常我使用$(“#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>

当前回答

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

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

其他回答

为每个选项设置值

<label for="aioConceptName">AIO Concept Name</label>
<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>上设置值属性。

现在你可以调用$('#aioConceptName').val()而不是这一切:选择巫毒是由其他人建议。

如果有人发现最好的答案是行不通的。

试着使用:

  $( "#aioConceptName option:selected" ).attr("value");

在最近的项目中为我工作,所以值得一看。

Try

aioConceptName.selectedOptions[0].value

let val = aioconcepts . selecpick [0].value 控制台日志(selected珍惜:“瓦尔); < >标签名,< - >标签 <输入类型=“文本” 选择< id =“aioConceptName > < < / lo选项>选择选项> <罗马选项> < /选项> <选项> totti < /选项> 选择< - >

也可以使用jQuery.val()函数来选择元素:

.val()方法主要用于获取表单元素的值 如输入,选择和文本区域。对于选择元素,它 返回null,当没有选择任何选项时,返回一个包含 当至少有一个并且是时,每个所选选项的值 可以选择更多,因为存在多个属性。

$(函数() { $(“#aioConceptName”).on(“change”, function() { $(“#debug”).text($(“#aioConceptName”).val()); }).trigger(“change”); }); <script src=“https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js”></script> <select id=“aioConceptName”> <option>选择io</option> <option>罗马</option> <option>托蒂</option> </select> <div id=“debug”></div>

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

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

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

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

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