質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1614閲覧

セレクトボックスにrequiredを記述するとw3cでエラーが出る

退会済みユーザー

退会済みユーザー

総合スコア0

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/05/04 03:09

編集2020/05/04 06:07

下記セレクトボックスを必須にしたいのでselectにrequiredを記述するとw3cで引っかかります。
全てのselectに記述したいのですが、どれに記述してもエラーが出ました。
エラー内容です
イメージ説明

html

1<select id="year" name="000" class="birth" required> 2 <option value="0">----</option> 3</select>4<select id="month" name="000" class="birth" required> 5 <option value="0">--</option> 6</select>7<select id="date" name="000" class="birth" required> 8 <option value="0">--</option> 9</select>

日付の取得はjQueryです

jQuery

1$(function(){ 2// 現在の年月日を取得 3 var time = new Date(); 4 var year = time.getFullYear(); 5 var month = time.getMonth() + 1; 6 var date = time.getDate(); 7 8 // 選択された年月日を取得 9 var selected_year = document.getElementById("year").value; 10 var selected_month = document.getElementById("month").value; 11 12 // 年(初期): 1900〜現在の年 の値を設定 13 for (var i = year; i >= 1900 ; i--) { 14 $('#year').append('<option value="' + i + '">' + i + '</option>'); 15 } 16 17 // 月(初期): 1~12 の値を設定 18 for (var j = 1; j <= 12; j++) { 19 $('#month').append('<option value="' + j + '">' + j + '</option>'); 20 } 21 22 // 日(初期): 1~31 の値を設定 23 for (var k = 1; k <= 31; k++) { 24 $('#date').append('<option value="' + k + '">' + k + '</option>'); 25 } 26 27 // 月(変更):選択された年に合わせて、適した月の値を選択肢にセットする 28 $('#year').change(function() { 29 selected_year = $('#year').val(); 30 31 // 現在の年が選択された場合、月の選択肢は 1~現在の月 に設定 32 // それ以外の場合、1~12 に設定 33 var last_month = 12; 34 if (selected_year == year) { 35 last_month = month; 36 } 37 $('#month').children('option').remove(); 38 $('#month').append('<option value="' + 0 + '">--</option>'); 39 for (var n = 1; n <= last_month; n++) { 40 $('#month').append('<option value="' + n + '">' + n + '</option>'); 41 } 42 }); 43 44 // 日(変更):選択された年・月に合わせて、適した日の値を選択肢にセットする 45 $('#year,#month').change(function() { 46 selected_year = $('#year').val(); 47 selected_month = $('#month').val(); 48 49 // 現在の年・月が選択された場合、日の選択肢は 1~現在の日付 に設定 50 // それ以外の場合、各月ごとの最終日を判定し、1~最終日 に設定 51 if (selected_year == year && selected_month == month ) { 52 var last_date = date; 53 }else{ 54 // 2月:日の選択肢は1~28日に設定 55 // ※ ただし、閏年の場合は29日に設定 56 if (selected_month == 2) { 57 if((Math.floor(selected_year%4 == 0)) && (Math.floor(selected_year%100 != 0)) || (Math.floor(selected_year%400 == 0))){ 58 last_date = 29; 59 }else{ 60 last_date = 28; 61 } 62 63 // 4, 6, 9, 11月:日の選択肢は1~30日に設定 64 }else if(selected_month == 4 || selected_month == 6 || selected_month == 9 || selected_month == 11 ){ 65 last_date = 30; 66 67 // 1, 3, 5, 7, 8, 10, 12月:日の選択肢は1~31日に設定 68 }else{ 69 last_date = 31; 70 } 71 } 72 73 $('#date').children('option').remove(); 74 $('#date').append('<option value="' + 0 + '">--</option>'); 75 for (var m = 1; m <= last_date; m++) { 76 $('#date').append('<option value="' + m + '">' + m + '</option>'); 77 } 78});

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

value="0"をvalue=""にしたらできました。

投稿2020/05/09 22:44

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問