0

ユーザーが3つの期間(または1つまたは2つ)を選択できるフォームがあります。このパターンが繰り返され、ユーザーはカスタム範囲の日付を毎週、毎月、毎日など選択できます。入力ごとにjquery関数全体を書き出す必要がないようにjqueryを最適化する方法がある場合はどうなりますか?実際に変更されるのは、IDの番号だけです。

<input type='text' id='custom1from'><input type='text' id='custom1until'>
<input type='text' id='custom2from'><input type='text' id='custom2until'>
<input type='text' id='custom3from'><input type='text' id='custom3until'>

<input type='text' id='monthly1from'><input type='text' id='monthly1until'>
<input type='text' id='monthly2from'><input type='text' id='monthly2until'>
<input type='text' id='monthly3from'><input type='text' id='monthly3until'>



$("#custom1from").click(function() {
        $("#custom1from").datepicker();
      });

      $("#custom1until").click(function() {
        $("#custom1until").datepicker();
      });

      $("#custom2from").click(function() {
        $("#custom2from").datepicker();
      });

      $("#custom2until").click(function() {
        $("#custom2until").datepicker();
      });


  $("#custom3until").click(function() {
    $("#custom3until").datepicker();
  });
  $("#custom3until").click(function() {
    $("#custom3until").datepicker();
  });
4

2 に答える 2

1
$('input').click(function(){
    $(this).datepicker(); // use "this" don't requery the DOM.
});

これらの入力を次のようなクラスに追加することをお勧めしますfoo

$('input.foo').click(function(){
    $(this).datepicker();
});
于 2013-02-08T13:18:41.617 に答える
1

クラスを与えて、それを選択するだけです。

<input type='text' class="datepick" id='custom1from'><input type='text' id='custom1until'>
<input type='text' class="datepick" id='custom2from'><input type='text' id='custom2until'>
<input type='text' class="datepick" id='custom3from'><input type='text' id='custom3until'>

<input type='text' class="datepick" id='monthly1from'><input type='text' id='monthly1until'>
<input type='text' class="datepick" id='monthly2from'><input type='text' id='monthly2until'>
<input type='text' class="datepick" id='monthly3from'><input type='text' id='monthly3until'>

$(".datepick").datepicker();
于 2013-02-08T13:19:16.733 に答える