我要实现的事情是,无论何时<select>更改下拉列表,我都希望更改之前的下拉列表的值。我正在使用1.3.2版的jQuery并使用on change事件,但是更改后得到的值是。
<select>
<select name="test"> <option value="stack">Stack</option> <option value="overflow">Overflow</option> <option value="my">My</option> <option value="question">Question</option> </select>
可以说,当我在onchange事件中将其更改为堆栈时(即,当我将其更改为堆栈时),现在选择了My选项,我希望它是先前的值,即本例中的期望值。
如何做到这一点?
编辑: 就我而言,我在同一页面中有多个选择框,并希望将相同的内容应用于所有选择框。通过页面加载通过ajax之后,也会插入所有我选择的内容。
将 焦点 事件与 更改 事件结合起来即可实现所需的目标:
(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; }); })();