0

ラジオ ボタンの値に応じて、いくつかの入力ボックスの表示を切り替えるフォームがあります。クリック時とロード時にこのアクションを実行したい。両方のイベントで 2 回呼び出される関数を定義することにしました。

使用してみon.('click load', function()...)ましたが、これはうまくいきませんでした。

以下を行うためのよりきれいな方法はありますか?

$(function() {
  toggleQuestions($('.subscribe-how input'));       
  function toggleQuestions(e){
    $('.custom-questions').hide();      
    $('.custom-question-'+$(e).val()).show();       
  };
  $('.subscribe-how input').on('click', function(e){
    toggleQuestions(this);
  });   
});
4

1 に答える 1

0

これをお勧めします:

  function toggleQuestions(e){
    $('.custom-questions').hide();      
    $('.custom-question-'+e).show();        
  }
  $(function() {
    $('.subscribe-how :input').on('click', function(e){
      toggleQuestions(this.value);
    }).click(); 
  });

関数を外部に配置し、クリック イベントのコールバック関数から値を直接渡します。

于 2013-04-03T10:29:00.957 に答える