Javascript 多重选择获取最近选择的选项值
我想知道上次或最近选择的下拉选项值 我在django中尝试了以下代码:Javascript 多重选择获取最近选择的选项值,javascript,jquery,django,Javascript,Jquery,Django,我想知道上次或最近选择的下拉选项值 我在django中尝试了以下代码: <script type="text/javascript"> django.jQuery(document).ready(function(){ django.jQuery("#id_emuhibah_issue").on("click", function(e){ console.log(" click -------");
<script type="text/javascript">
django.jQuery(document).ready(function(){
django.jQuery("#id_emuhibah_issue").on("click", function(e){
console.log(" click -------");
console.log(django.jQuery(this).val());
console.log(this.value);
});
});
django.jQuery(document).ready(function(){
django.jQuery("#id_emuhibah_issue").on("change", function(e){
console.log(" chage -------");
console.log(django.jQuery(this).val());
console.log(this.value);
});
});
</script>
似乎没有运气找到最后选定的值
有人能为上述情况提出解决方案吗?只需删除“单击”功能并仅使用on.change功能即可。。一个功能,一个文档准备就绪以下是我如何处理该案例:
<script type="text/javascript">
Array.prototype.diff = function(a) {
return this.filter(function(i) {return a.indexOf(i) < 0;});
};
var old_selected_issues = [];
django.jQuery(document).ready(function(){
django.jQuery("#id_issue").on("change", function(e){
var new_selected_issues = django.jQuery(this).val();
if(new_selected_issues != null){
var diff = new_selected_issues.diff(old_selected_issues);
old_selected_issues = new_selected_issues;
if(diff.length){
//perform the job on last selected option
var lang = window.location.pathname.slice(1,3)
django.jQuery("#issue_iframe").attr('src', '/'+lang+'/admin/'+diff[0]+'/');
}
else{
django.jQuery("#issue_iframe").attr('src', '');
}
}
else
{
old_selected_issues = [];
django.jQuery("#issue_iframe").attr('src', '');
}
});
});
</script>
如果有任何其他可能的解决方案,请告诉我var previousElem=django.jQuerythis.find'option:selected.valSo what返回console.logthis.value;?你是说你想要以前选择的值还是什么?也许如果我理解您的预期行为,只需使用mousedown事件,而不是单击,或者更好地在jq数据中设置上一个值object@A.Wolff对我只想要最后选择的值。用户可以按任意顺序选择多个值,因此我希望最后或最近选择一个。this.value仅返回所有选定值数组和console.logdjango.jQuerythis.val的最后一个值;返回arrayI已经尝试过了,但这并不能帮助我实现我希望用户从selectbox中获取的上一个选定值