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">

それらの1つがチェックされると、以前にアクティブだったもの(存在する場合)を知ることができますか?

次の関数を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 に答える