我在脚本中使用了一个假选择框,这意味着原始选择框被隐藏,并且出于样式目的,会显示 ul。每当此列表中的选定值发生更改时,原始选择框也会发生更改。
有一个更改功能。该函数内包含以下代码:
var el = $(e.currentTarget) ;
$('#my_select_box').children().removeAttr('selected');
$('#my_select_box option[value="'+el.attr('data-value')+'"]').attr('selected','selected');
更改后,我想在另一个函数中检索原始选择框的新选定值。
但是普通选择器只获取原始值,而不获取新值:
$('#my_select_box option:selected').val() //returns the wrong value
那么如何在我需要的函数中获取新值呢?
我尝试过这个功能:
$("#my_select_box").bind("DOMSubtreeModified", function() {
console.log($(this).find('option:selected').val());
});
它返回正确的值,但不是我需要的地方。那么如何从 domtree live 中检索正确的选择框值呢?
提前致谢!
最佳答案
尝试 .prop('selected', true); 代替 .attr('selected','selected');,
关于javascript - 如何获取dom修改的选择框当前选中的选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28737757/