私はhtmlを初めて使っています。タイトルの日付と年の入力タイプについて質問しています。 日付:(日付のドロップダウンリスト)月:(月のドロップダウンリスト)年:(年のドロップダウンリスト)。次のように日付、月、年を別々に取得したい。 ありがとうございました!HTMLで日付、月、年を別々に取得
答えて
:
次のようなHTML5日付入力コントロールを試すことができます
var s,
DateWidget = {
settings: {
months: ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sept','Oct','Nov','Dec'],
day: new Date().getUTCDate(),
currMonth: new Date().getUTCMonth(),
currYear: new Date().getUTCFullYear(),
yearOffset: 21,
containers: $(".dateDropdown")
},
init: function() {
s = this.settings;
DW = this;
s.containers.each(function(){
DW.removeFallback(this);
DW.createSelects(this);
DW.populateSelects(this);
DW.initializeSelects(this);
DW.bindUIActions();
})
},
getDaysInMonth: function(month, year) {
return new Date(year, month, 0).getDate();
},
addDays: function(daySelect, numDays){
$(daySelect).empty();
for(var i = 0; i < numDays; i++){
$("<option />")
.text(i + 1)
.val(i + 1)
.appendTo(daySelect);
}
},
addMonths: function(monthSelect){
for(var i = 0; i < 12; i++){
$("<option />")
.text(s.months[i])
.val(s.months[i])
.appendTo(monthSelect);
}
},
addYears: function(yearSelect){
for(var i = 0; i < s.yearOffset; i++){
$("<option />")
.text(i + s.currYear)
.val(i + s.currYear)
.appendTo(yearSelect);
}
},
removeFallback: function(container) {
$(container).empty();
},
createSelects: function(container) {
$("<select class='day'>").appendTo(container);
$("<select class='month'>").appendTo(container);
$("<select class='year'>").appendTo(container);
},
populateSelects: function(container) {
DW.addDays($(container).find('.day'), DW.getDaysInMonth(s.currMonth, s.currYear));
DW.addMonths($(container).find('.month'));
DW.addYears($(container).find('.year'));
},
initializeSelects: function(container) {
$(container).find('.day').val(s.day);
$(container).find('.currMonth').val(s.month);
$(container).find('.currYear').val(s.year);
},
bindUIActions: function() {
$(".month").on("change", function(){
var daySelect = $(this).prev(),
yearSelect = $(this).next(),
month = s.months.indexOf($(this).val()) + 1,
days = DW.getDaysInMonth(month, yearSelect.val());
DW.addDays(daySelect, days);
});
$(".year").on("change", function(){
var daySelect = $(this).prev().prev(),
monthSelect = $(this).prev(),
month = s.months.indexOf(monthSelect.val()) + 1,
days = DW.getDaysInMonth(month, $(this).val());
DW.addDays(daySelect, days);
});
}
};
DateWidget.init();
div{ margin:15px; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<div class="dateDropdown">
<label for="dateField1">Please enter the date:</label>
<input id="dateField1" type="text" placeholder="dd.mm.yyyy"/>
</div>
ドロップダウンメニューはselect要素
<select name="day">
<option value="1">01</option>
<option value="2">02</option>
.
.
<option value="31">31</option>
</select>
(Source)2月30日のように、異なるヶ月は日数の数が異なるので、あなたは無効な日付を指定するに終わるかもしれないことを
注意を使用して作成することができます。
ええ、そう...私はそれを考えました。有効な日付なのか何とか確認できますか? –
使用するHTMLバージョンに適した入力タイプがなく、ブラウザでサポートされている入力タイプがない場合は、余分なロジックを自分で追加する必要があります。 JavaScriptを使用してブラウザ内で(select要素によって生成されたデータ変更イベント中に送信ボタンをグレイアウトするなど)、または日付が有効な場合はそれを有効にするか、サーバー側で(入力を拒否するそれは無効であり、通知を表示しています)。 – mvw
純粋なhtmlで日付を取得することは容易ではありません。
monthinputに応じてdayinputのドロップダウンリストの数はいくらですか?このコードを試してみてください
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hey</title>
<script type="text/javascript">
'use strict';
function getMyDate() {
var dateInput = document.getElementById('date');
var myDate = dateInput.value;
var myDateArray = myDate.split('-');
var year = myDateArray[0];
var month = myDateArray[1];
var day = myDateArray[2];
alert(year)
alert(month)
alert(day)
}
</script>
</head>
<body>
<input type="date" id="date"/>
<input type="button" value="clickme" onclick="getMyDate()"></body>
</body>
</html>
- 1. 日付とは別に日、月、年を取得する
- 2. 昨年9月の日付を取得
- 3. 特定の日付から日付、月、年を取得する
- 4. Android:年月日を使用して日付を取得する
- 5. 日付ピッカー - 月/年
- 6. ルビー - 日付取得 - 指定した年、月、weeknumber日
- 7. Bigqueryの完全な日付(年月日)〜(年月)
- 8. レール/(年)/(月)/(日)別ページ
- 9. ラテックス日付日時計算月日年
- 10. htmlページ(2017年6月10日)からのpythonスクレイピング日付
- 11. 月と年のユーザー入力を取得して、その月と年の日付をExcelに入力します
- 12. 生年月日から年月日
- 13. システム日付とスプリット日、月、年
- 14. Pythonで、文字列を日付オブジェクトに変換し、年、月、日を別々に取得する方法はありますか?
- 15. 次の形式で翌日を取得する方法月、日、年(3月、31,2017)
- 16. 生年月日を取得するロジック年齢から年月日を表現します
- 17. Python形式の日付は「1991年1月1日月曜日」
- 18. Firebase WEB、グループ日付、月、年による子レコード別
- 19. AngularJSマテリアルで年月日を取得するには?
- 20. Oracleグループ月、年、年別、月別
- 21. 別の日付オブジェクトから(6ヶ月前)日付オブジェクトを取得します
- 22. 年/月/日を年月日に変更する
- 23. C#日付から年を取得
- 24. 「日月年」の日付に変換する日付を秒で表します
- 25. MySQLで月曜日の日付を取得するには?
- 26. 日付が同じ月/年の場合、日付と時刻の間でレコードを取得する方法は?
- 27. 日付を日/月/年(2012年1月20日)のPythonに変換するには
- 28. ブートストラップ日付ピッカー - 月と年だけ
- 29. 月と年の日付変換
- 30. Var whatever = new日付(年、月、0).getDate()?
私の質問に何か問題ありますか?なぜあなたはそれをdownvote? –
[あなたがこれまでに試したこと](http://whathaveyoutried.com)を表示するようあなたの質問を編集してください。問題のあるコードの[mcve]を含める必要があります。次に、特定の問題を解決するために役立つことができます。 [ask]も読んでください。 –
さて、私は次回修正します:Dありがとう! –