2014-10-29 123 views
1

鉴于这种选择的元素:jQuery - 如何选择之前选择的选择选项?

<select id="foo"> 
<option value="1">1</option> 
<option value="2">3</option> 
<option value="3">3</option> 
</select> 

我选择选项1首先,我怎么找回1的值我使用jQuery这个选择下拉列表中选择2后?

+0

只需将其保存到选择本身(我的首选项)上的变量或属性? :)请显示您尝试的代码。 – 2014-10-29 10:31:00

+0

将值(或选项编号或编号)存储在变量 – myfunkyside 2014-10-29 10:31:42

回答

1

只需保存先前的选择,它保存在一个变量或作为选择本身(属性是我的喜好,你可以在DOM检查看到它们),例如以下属性:

$('#foo').change(function(){ 

    // Get previous value (if any) 
    var lastValue = $(this).attr("data-lastvalue"); // or $(this).data("lastvalue"); 

    // Do stuff 

    // Save new value 
    $(this).attr("data-lastvalue", $(this).val()); 
}); 

JSFiddle:http://jsfiddle.net/TrueBlueAussie/5kznycjn/2/

+0

中,表示网址错误。 – Kyojimaru 2014-10-29 10:45:56

+0

@Kojimaru:谢谢。通常情况下,更新只是附加一个版本,但是这次JSFiddle更改了URL :) – 2014-10-29 10:47:19

+0

问题:attr()方法在#foo内部找到属性的参数。但是,foo没有“lastvalue”属性。这个代码如何工作,因为它看起来像魔术? – ohyeah 2014-10-29 10:51:22