Javascript 在使用get()检索select后使用jQuery确定所选选项

Javascript 在使用get()检索select后使用jQuery确定所选选项,javascript,jquery,select,Javascript,Jquery,Select,我使用get()检索页面上的第一个select下拉列表,如下所示: styleSelect = jQuery('select').get(0); 我可以做一些正常的事情,比如 jQuery(styleSelect).remove(); 删除select,但我在找到获取当前所选选项文本的正确语法时遇到问题。我试过: jQuery(styleSelect, ':selected').text(); 我想我只是遗漏了一些愚蠢的东西 jQuery('select').val() 应返回当前选定元

我使用get()检索页面上的第一个select下拉列表,如下所示:

styleSelect = jQuery('select').get(0);
我可以做一些正常的事情,比如

jQuery(styleSelect).remove();
删除select,但我在找到获取当前所选选项文本的正确语法时遇到问题。我试过:

jQuery(styleSelect, ':selected').text();
我想我只是遗漏了一些愚蠢的东西

jQuery('select').val()
应返回当前选定元素的值

尽管如此,这确实返回了值。很少返回文本

您可以通过以下方式来实现:

jQuery('#test').change(function() {
    //get text(), change to .val() to get value
    var value = jQuery(':selected', this).text();
    //insert value
    jQuery('h2 span').html(value); 
});

容纳html

    <select name="test" id="test">
        <option value="AA">AA</option>
        <option value="MA">MA</option>
        <option value="LA">LA</option>
        <option value="GO">TEST</option>

    </select>

<h2>selected:<span></span> </h2>

AA
文科硕士
洛杉矶
测验
挑选出来的:
注意将.text()更改为.val(),然后选择最后一个选项以查看选择值和文本之间的差异。
.text()
应该返回TEST,其中
.val()
将返回GO

var styleSelect = $('select option:selected');
console.log(styleSelect.val());

将为您提供当前所选选项的值。请先使用选择器,然后使用上下文:

jQuery(':selected',styleSelect).text();
matchew的建议也会起作用,但只有在您没有设置
的值属性时才会起作用
(如果设置值属性,您将获得所选选项的值,而不是文本)

以下是在所有可编写脚本的浏览器中使用的旧skool非jQuery版本:

var option = styleSelect.options[styleSelect.selectedIndex];
alert("Value: " + option.value + ", text: " + option.text);