通常我使用$(“#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>
如果你在事件上下文中,在jQuery中,你可以使用以下方法检索所选的选项元素:
$(this).find('option:selected')如下所示:
$('dropdown_selector').change(function() {
//Use $option (with the "$") to see that the variable is a jQuery object
var $option = $(this).find('option:selected');
//Added with the EDIT
var value = $option.val();//to get content of "value" attrib
var text = $option.text();//to get <option>Text</option> content
});
Edit
正如possession within所提到的,我的答案只是回答这个问题:如何选择所选的“选项”。
接下来,要获取选项值,使用option.val()。
JQuery:
如果你想要得到选定的选项文本,你可以使用$(select element).text()。
var text = $('#aioConceptName选项:selected').text();
如果你想要得到选定的选项值,你可以使用$(select element).val()。
var val = $('#aioConceptName选项:selected').val();
确保在<option>标签中设置value属性,如:
<选择id = " aioConceptName " >
<option value="">choose io</option> .
<选项值=“罗马(值)" >罗马(文本)< /选项>
<选项值= "托蒂(值)" >托蒂(文本)< /选项>
< /选择>
在这个HTML代码示例中,假设选择了最后一个选项:
Var text会给你totti(text)
Var val会给你totti(value)
美元(文档)。(“改变”,“# aioConceptName”功能(){
var val = $('#aioConceptName选项:selected').val();
var text = $('#aioConceptName选项:selected').text();
$ (' .result ')。text("Select Value = " + val);
$ (' .result ')。append("<br>Select Text = " + Text);
})
< script src = " https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js " > < /脚本>
<选择id = " aioConceptName " >
<选项值= " io(值)“>选择io > < /选项
<选项值=“罗马(值)" >罗马(文本)< /选项>
<选项值= "托蒂(值)" >托蒂(文本)< /选项>
< /选择>
< p class = "结果" > < / p >