2010-12-02 7 views
0

私はこの質問を編集しています。明らかに、ドキュメントのロード時にデフォルトで「radio2」が選択されています。その後、ユーザーは「radio1」を選択することができます。私は、上のコードの最初の部分を書かれているラジオボタンにセレクタとイベントをバインドするにはどうすればいいですか?

$("#radio2").bind('click',function(){ 
    if($("#somehidden").val()==="ABC") { 
    $("#txt1").val("BCD"); 
    $("#txt2").val("ZXY"); 
    }  
}); 

をクリックしたときに

if($("#radio2:checked") && $("#somehidden").val()==="ABC") { 
    //Do some Set of actions 
    $("#txt1").val("BCD"); 
    $("#txt2").val("ZXY"); 
} 

ハンドルをチェックしたときに

ハンドル:

私は、コードの2つの部分を持っています私は同じ行動セットを持っているドキュメントをロードし、これらのアクションは同じように見える私たちはコードの2番目の部分で見てきました。私の質問は、コードの最初の部分を削除しなければならない理由は、既にクリックの隠し値条件があるためです。両方をどうやって処理できますか? trigger()を使用して選択しています。私はそれをしたくありません。

答えて

0

triggerを使用してイベントをトリガーします。

$("#radio1").bind('click',function(){ 
    alert("Checked"); 
}).trigger('click'); //on ready; 
+0

私はマヘシュ@のように手動でRadio1の – Someone

0

このお試しください:

$(function() { 
    $("#radio1").bind('click',function(){ 
    alert("Checked"); 
    }); 

    $("#radio1").click(); // on ready 
}); 
0
$(function() { 
    var $radio1 = $("#radio1"), 
     actionIfChecked = function() { 
     alert("Checked"); 
     }; 

    $(window).load(function() { 
    if ($radio1.is(":checked")) actionIfChecked(); 
    }); 

    $radio1.click(actionIfChecked); 
});

編集:私は他の応答によって判断し、質問を誤解し、その可能性を。

0
$(function() { 
    $("#radio1").bind('click',function(){ 
    if ($(this).is(":checked") { 
     // Do your stuff 
    } 
    }) 
}); 
+0

を、それを選択したくない:「:チェックします」あなたがクリックするまで解雇されることはありませんか? – Someone

+0

これは単なるバインディングであり、一度クリックすると、このコードはチェックされているかどうかをチェックします。クリックしてチェックを外すこともできますが、そのコードにいくつかのコードを入れた場合、チェックされると起動します。私はあなたの質問を正しく得ましたか? –

+0

私はCheckedを最初に呼び出さなければなりません – Someone

0

私は、これはあなたが探しているものですが、それが役立つかもしれないのかはわからない:

if($("#radio1").attr("checked")){ 
    alert("Checked"); 
} 

$(function() { 
    $("#radio1").bind('click',function(){ 
     if(this.checked){ 
      alert("Checked"); 
     } 
    }); 
}); 
関連する問題