我有以下实现,每当我更改选择值时触发更改事件。
$(element).on("change", function() {
});
现在,在on change function中我需要获取所选的选项,然后将selected = selected属性附加到它。
所以我可以使用以下内容获取值:
$(element).on("change", function() {
alert($(this).find(":selected").text());
});
但是所选值不会反映在用户界面中。它仍然没有选择。
答案 0 :(得分:1)
获取所选的选项值:
$(element).on("change", function() {
var item=$(this);
alert(item.val())
});
或
$(element).change(function() {
var item=$(this);
alert(item.val())
});
var element = $("#options");
$(element).on("change", function() {
var item=$(this);
alert(item.val())
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select id="options">
<option value="select">Select</option>
<option value="select 1 value">Select 1</option>
<option value="select 2 value">Select 2</option>
</select>
&#13;
答案 1 :(得分:0)
在该功能中:$(this).find(&#39;:selected&#39;)。attr(&#39; selected&#39;,&#39; selected&#39;);
那就行了。但你为什么需要呢?您可以使用:selected伪选择器获取所选选项。
答案 2 :(得分:0)
试试这个:
$("#select").on("change", function() {
$(this.selectedOptions[0]).attr("selected", "selected");
});