jquery またはスタンドアロン js の適切なタイムピッカーは何ですか? Google がカレンダーで使用する、15 分間隔で一般的な時間をドロップダウンするか、時間を手動で入力して検証できるようなものが欲しいです。
5 に答える
いくつかのリソース:
これは、日付までに見つけた最高のものですhttp://trentrichardson.com/examples/timepicker/
提案されたタイム ピッカーのどれにも満足できなかったので、Perifer と HTML5 仕様からインスピレーションを得て独自のタイム ピッカーを作成しました。
http://github.com/gregersrygg/jquery.timeInput
時間入力 (step、min、max) に新しい html5 属性を使用するか、オプション オブジェクトを使用できます。
<input type="time" name="myTime" class="time-mm-hh" min="9:00" max="18:00" step="1800" />
<input type="time" name="myTime2" class="time-mm-hh" />
<script type="text/javascript">
$("input[name='myTime']").timeInput(); // use default or html5 attributes
$("input[name='myTime2']").timeInput({min: "6:00", max: "15:00", step: 900}); // 15 min intervals from 6:00 am to 3:00 pm
</script>
次のように入力を検証します。
- 欠落している場合は「:」を挿入
- 有効な時間ではありませんか? ブランクに置換
- ステップによる有効な時間ではありませんか? 最も近いステップに切り上げ/切り捨て
HTML5 仕様では、午前/午後またはローカライズされた時刻の構文が許可されていないため、hh:mm の形式のみが許可されています。仕様では秒が許可されていますが、まだ実装していません。
これは非常に「アルファ版」であるため、いくつかのバグがある可能性があります。お気軽にパッチ/プル リクエストを送ってください。IE 6&8、FF、Chrome、および Opera で手動でテストしました (後者については Linux で最新の安定版)。
誰かが別の JavaScript TimPicker に興味を持っている場合に備えて、私はその仕事をする jQuery プラグインを開発して維持しています。これは EZ Time JS のように機能し (私は 5 分前まで知りませんでした:D)、ユーザーが快適に感じるほぼすべての方法で時間を入力し、入力を共通の形式に変換できるようにします。
jQuery TimePicker Options ページをチェックアウトして、実際の動作を確認してください。