为了账号安全,请及时绑定邮箱和手机立即绑定

更改前获取SELECT(下拉)值

更改前获取SELECT(下拉)值

呼唤远方 2019-07-03 15:31:03
更改前获取SELECT(下拉)值我想要实现的是,每当<select>下拉列表是更改的,我想要在更改之前下拉的值。我使用的是1.3.2版本的jQuery,并在Change事件上使用,但我在那里获得的值是在更改之后。<select name="test"><option value="stack">Stack</option><option value="overflow">Overflow</option><option value="my">My</option> <option value="question">Question</option></select>假设当前选项my被选中,当我在onchange事件中将其更改为堆栈时(即,当我将其更改为堆栈时),我希望它是以前的值,即我在本例中所期望的值。如何才能做到这一点?编辑:在我的例子中,我在同一页中有多个选择框,并希望将相同的内容应用于所有这些复选框。另外,我的所有选择都是在通过Ajax加载页面之后插入的。
查看完整描述

3 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

我倾向于Avi Pinto的解决方案,它使用jquery.data()

使用焦点不是有效的解决方案。它在第一次更改选项时工作,但是如果您停留在SELECT元素上,然后按下“向上”或“向下”键。它不会再经历焦点事件了。

所以解决方案应该是如下所示,

//set the pre data, usually needed after you initialize the select element$('mySelect').data('pre', $(this).val());
$('mySelect').change(function(e){
    var before_change = $(this).data('pre');//get the pre data
    //Do your work here
    $(this).data('pre', $(this).val());//update the pre data})


查看完整回答
反对 回复 2019-07-03
  • 3 回答
  • 0 关注
  • 832 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信