我想要实现的目标是每当<select>
下拉列表已更改我想要更改前下拉列表的值。我正在使用 1.3.2 版本的 jQuery 并在更改事件上使用,但我得到的值是在更改之后。
<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 事件中将其更改为堆栈时(即,当我将其更改为堆栈时),我希望它是以前的值,即本例中我的预期值。
如何才能实现这一目标?
Edit:就我而言,我在同一页面中有多个选择框,并且希望将相同的内容应用于所有选择框。另外,我的所有选择都是在页面加载后通过 ajax 插入的。
结合focus事件与change事件来实现你想要的:
(function () {
var previous;
$("select").on('focus', function () {
// Store the current value on focus and on change
previous = this.value;
}).change(function() {
// Do something with the previous value after the change
alert(previous);
// Make sure the previous value is updated
previous = this.value;
});
})();
工作示例:http://jsfiddle.net/x5PKf/766 http://jsfiddle.net/x5PKf/766
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)