13

私はここSOで検索しましたが、この問題に対する適切な解決策は見つかりませんでした。jQueryUI DatePicker では、すべての年に対して再帰的な日付を選択する必要があるため、年の選択を表示したくありません。意味がないからです。

次のような呼び出し内でこれを取得するにはどうすればよいですか?

$('#myInput').datepicker({ dateFormat: "dd/mm" });  

注:同じページに他の日付ピッカーがあるため、ここで提案されているように css ソリューションを使用できません。 .ui-datepicker-year{ display:none; }

どんな助けでも大歓迎です。

前もって感謝します。

4

6 に答える 6

1

これを試して:

$("#myInput").datepicker();
$("#myInput").datepicker("option", "dateFormat", "dd/mm");

jQuery UI DatePicker Documentaionとして、

http://docs.jquery.com/UI/Datepicker#option-dateFormat

初期化では、以下の関数を呼び出す必要があります。

$("#myInput").datepicker({ dateFormat: "dd/mm" });

initメソッドの後で呼び出すと機能しません。

于 2012-04-20T08:57:51.363 に答える
1

Tats_innit からの回答に基づいて、いくつかの問題を解決するソリューションを次に示します。

$(function() {
  $('.dp').datepicker({
    dateFormat: 'd MM yy',
    beforeShow: function(inp, inst) {
      if (inp.classList.contains("Birthday")) {
        inst.dpDiv.addClass('BirthdayDatePicker');
        return {
          dateFormat: 'MM d',
          defaultDate: new Date(1904, 0, 1),
          minDate: new Date(1904, 0, 1),
          maxDate: new Date(1904, 11, 31),
        };
      }
    },
    onClose: function(dateText, inst) {
      inst.dpDiv.removeClass('BirthdayDatePicker');
    }
  });
});
.BirthdayDatePicker .ui-datepicker-year {
  display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>

Birthday: <input type='text' class='dp Birthday' placeholder='Month day'>

<div style="height: 12px" class="spacer"></div>

Defaults: <input type='text' class='dp' placeholder='day Month year'>

入力でクラスを使用すると、日付ピッカーからどの動作が必要かを指定するより簡単な方法であることがわかりました。

Birthdayクラスが見つかった場合、現在の年ではなく 1904 年を使用します。これは、1904 年がうるう年であり、2 月 29 日が利用可能であることを保証するためです。また、minDate/MaxDate オプションを使用して、ウィジェットを 12 か月の期間に制限します。numberOfMonths: [ 3, 4 ]必要に応じて、返されたオブジェクトに含めて、1 年全体を一度に表示することもできます。

于 2016-11-01T20:22:49.030 に答える
0

できませんでしたか

#myInput .ui-datepicker-year{ display:none; }

気になる日付ピッカーだけに制限するには?

于 2012-04-20T08:41:57.767 に答える