1

给定一组单选按钮,例如:

<input id="B_1" type="radio" name="radioName" value="1">
<input id="B_2" type="radio" name="radioName" value="2">
<input id="B_3" type="radio" name="radioName" value="3">
<input id="B_4" type="radio" name="radioName" value="4">

​当其中一个被检查时,是否有可能知道哪个先前处于活动状态(如果有的话)?

我尝试将以下函数附加到onclick事件中,但它不起作用,因为它返回当前选择的单选按钮,而不是之前选择的单选按钮:

my_func = function() {
    var checkedValue = $('input[type=radio]:checked').val();
    return alert("The previously selected was: " + checkedValue);
  };

我不知道是否有任何帮助,无论如何这里是完整的尝试:http: //jsfiddle.net/H6h4R/

4

2 回答 2

6

试试这个 - http://jsfiddle.net/H6h4R/1/

$(":radio").on("mousedown", function() {
    $("p").text( $('input[type=radio]:checked').val() );
}).on("mouseup", function() {
    $('input[type=radio]').prop('checked', false);
    $(this).prop('checked', true);
});

click事件仅在这一系列事件之后触发:

  • 当指针位于元素内部时,按下鼠标按钮。
  • 当指针位于元素内部时,鼠标按钮被释放。
于 2012-07-21T10:30:01.613 回答
0

如果他使用键盘键,这可以提供帮助

http://jsfiddle.net/DYrW3/73/

$('input[name=radios]').keydown(function(){
        alert("Before change "+$('input[name=radios]:checked').val());
})
于 2014-12-23T20:06:27.687 回答