1

私は自分のページで jQuery UI Datepicker を動作させようとしていますが、1 つの小さなことを除いてうまくいきます。ダイアログ メソッドを呼び出すと、入力フィールドが自動的に追加されます。

これは私のコードです

$('.select_date').each(function(i) {
   var input_name = $(this).attr('data-input');
   $('#'+input_name).datepicker();

   $(this).click(function() {
      var position = $(this).offset();

      $('#'+input_name).datepicker('dialog', "10/12/2012", function(date, inst) { 
           $('#'+input_name).val(date); 
         }, 
         {}, 
         [position.left + $(this).width() + 5, position.top]
      );
   });
});

私がやろうとしているのは、クラス .select_date を使用してボタン要素を反復処理し、それらの要素 (問題のページ上の 1 つ) ごとに、datepicker を data-input 属性の ID を持つ非表示フィールドにバインドする必要があることです現在のボタン。

そして、ボタンをクリックするとダイアログが開き、カレンダーで日付を選択すると、値が非表示フィールドに転送されるようにしています。

これらはすべて実際には非常にうまく機能しますが、何らかの理由で、ボタンを初めてクリックすると、次のフィールドが DOM に追加されます。

<input type="text" style="position: absolute; top: 265px; width: 0px; left: 674.5px;" id="dp1354917526755">

面白いことに、入力フィールドの位置は日付ピッカーとまったく同じですが、左の位置に 10px が追加されています。

4

0 に答える 0