0

ラジオボタングループのある画面があります。クライアントはラジオ ボタンのように見せたくないので、ラベルのスタイルを設定し、実際のラジオ ボタンを非表示にしました。選択したラジオボタンを「強調表示」し、関数を呼び出してユーザーの選択を処理するjqueryがあります。

$(function() {
   $('input:radio').change(function(){
     $(this).parent().toggleClass('active', this.checked).siblings().removeClass('active');
     processStep1(this);
   });  
});

この部分は正常に動作し、次の関数を呼び出します。

function processStep1(v) {
  if ($("input:radio[name='challenge-type']").is(":checked")) {
    $('#step1 .next').removeClass('disabled');
    // which of the challenge-type radios was selected?
    }
 }

次のボタンを「有効にする」前に、ラジオがチェックされていることを確認します。しかし、この時点で、選択されたラジオの値を知る必要があり、dom をもう一度チェックしないと値を取得する方法がわかりません。最初の関数の変更イベントでそれを取得し、2 番目の関数に渡す方法はありませんか?

4

2 に答える 2

0

同様のコードが機能する例を示すために、フィドルを作成しました。このコードはチェックボックスの値を取得し、アラートに表示します。

これをチェックしてください:http://jsfiddle.net/Joqus/cJPzv/

 
$(function() {
   $('input:radio').change(function(){
       $(this).parent().toggleClass('active', this.checked);
       $(this).parent().siblings().removeClass('active');

       processStep1(this);
   });
});

function processStep1(v) {
    if(v.checked)
    {
        alert('Value: ' + v.value);
    }
}
 
于 2013-04-03T16:37:42.863 に答える