2012-02-22 38 views
0
$('input[type="radio"]').change(function() { 
    alert(this.value); 
}); 

this.value此处已包含新值。我怎样才能获得以前的价值(即在改变价值之前)?在单选按钮值更改之前哪个事件被触发?

+2

你不能。该值被覆盖。 – 2012-02-22 18:59:20

+0

以前的唯一事件是页面加载。 – 2012-02-22 18:59:57

+1

onclick事件发生在onchange之前。 – ralfe 2012-02-22 19:01:45

回答

0

既然没有这样的情况下,我不得不存储在data-original-value属性上一个值:

$('input[type="radio"]').change(function() {   
    alert(this.name + ': ' + $(this).parents("div.control-group").attr('data-original-value') + ' -> ' + this.value); 
    $(this).parents("div.control-group").attr('data-original-value', this.value); 
}); 
1

change事件在函数中有一个eventData和一个eventObject。看到这里:http://api.jquery.com/change/尝试和他们一起玩。我认为你可以传递eventData中的旧值并通过eventObject在函数中检索它。

相关问题