2

jQueryでフォームのラジオボタンをバリデーションしたいのですがうまくいきません。ラジオ ボタンをチェックしても、以下のコード (変数「チェック済み」) は false を返します。

私は何を間違っていますか?

        $('.radio').each(function(){
            var checked = $(this).is(':checked');
            if($(this).is(':checked') === false){
                e.preventDefault();
            }
        });
4

3 に答える 3

1

これを試して

  $('.radio').each(function(){
            var checked = $(this).attr("checked") == "checked";
            if(checked){
                e.preventDefault();
            }
        });
于 2012-06-04T08:47:05.677 に答える
0

使用する

 $('.radio').click(function(){               
                if($(this).is(':checked') == false){
                    e.preventDefault();
                }
    });

$(this).is(:checked) またはを使用$(this).attr('checked')して、チェックボックスのステータスを取得します

于 2012-06-04T08:47:29.500 に答える
0
        $('.radio').each(function(e){
            var checked = this.checked;  // using this.checked is better
            if(!checked){  // not checked
                e.preventDefault();
            }
        });

または、必要に応じ:is(':checked')

        $('.radio').each(function(e){
            var checked = $(this).is(':checked');
            if(!checked){  // not checked
                e.preventDefault();
            }
        });
于 2012-06-04T08:49:02.387 に答える