Limited availability
<input>
è¦ç´ ã® week
åã¯ãå¹´ã¨ããã®å¹´ã® ISO 8601 é±çªå· (ã¤ã¾ãã第 1 é±ãã第 52 ã¾ã㯠53 é±) ãç°¡åã«å
¥åãããã¨ãã§ããå
¥åæ¬ãçæãã¾ãã
<label for="camp-week">5æã6æã®é±ãé¸ãã§ãã ãã:</label>
<input
type="week"
name="week"
id="camp-week"
min="2018-W18"
max="2018-W26"
required />
label {
display: block;
font:
1rem "Fira Sans",
sans-serif;
}
input,
label {
margin: 0.4rem 0;
}
ã³ã³ããã¼ã«ã®ã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ããã©ã¦ã¶ã¼ã«ãã£ã¦æ§ã
ã§ããç¾æç¹ã§ã¯ãã©ã¦ã¶ã¼éã®å¯¾å¿ã¯éå®çã§ã Chrome/Opera 㨠Microsoft Edge ã®ã¿ã対å¿ãã¦ãã¾ãã対å¿ãã¦ããªããã©ã¦ã¶ã¼ã§ã¯ããã®ã³ã³ããã¼ã«ã¯åç´ãª <input type="text">
ã«æ ¼ä¸ãããã¾ãã
æååã§ãå ¥åæ¬ã«å ¥åãããå¹´ã¨é±ã表ãã¾ãããã®å ¥ååã§ä½¿ãããæ¥æå¤ã®å½¢å¼ã¯ã鱿ååã§èª¬æãã¦ãã¾ãã
次ã®ããã« value
屿§ã«å¤ãå
¥ãããã¨ã§ãæ¢å®å¤ãè¨å®ãããã¨ãã§ãã¾ãã
<label for="week">ã©ã®é±ã«å§ãããã§ããã</label>
<input id="week" type="week" name="week" value="2017-W01" />
ä¸ç¹æ°ãä»ããªããã°ãªããªããã¨ã¯ãå®éã® value
ã¯å¸¸ã« yyyy-Www
ã®æ¸å¼ã§ããã表示ãããæ¸å¼ã¯ããã¨ã¯ç°ãªãå¯è½æ§ãããã¨ãããã¨ã§ããä¾ãã°ãä¸è¨ã®å¤ããµã¼ãã¼ã«éä¿¡ããã¨ããã©ã¦ã¶ã¼ã¯ Week 01, 2017
ã®ããã«è¡¨ç¤ºããããããã¾ããããéä¿¡ãããå¤ã¯å¸¸ã« week=2017-W01
ã®ããã«ãªãã¾ãã
次ã®ããã«ã JavaScript ããå
¥åè¦ç´ ã® value
ããããã£ã使ç¨ãã¦ãå¤ãåå¾ãããè¨å®ããããããã¨ãã§ãã¾ãã
const weekControl = document.querySelector('input[type="week"]');
weekControl.value = "2017-W45";
追å ã®å±æ§
ãã¹ã¦ã® <input>
åã§å
±éãã屿§ã«å ãã week
åã®å
¥åæ¬ã¯æ¬¡ã®å±æ§ã«ã対å¿ãã¦ãã¾ãã
åãä»ããï¼æéçã«ï¼æãé
ãå¹´ã¨é±çªå·ã§ãä¸è¨ã®å¤ã®ç¯ã§èª¬æããæå忏å¼ã§ããè¦ç´ ã«å
¥åããã value
ããããè¶
ããå ´åãè¦ç´ ã¯å¶ç´æ¤è¨¼ã«å¤±æãã¾ãã max
屿§ã®å¤ã妥å½ãªé±ã®æååã§ã¯ãªãå ´åãè¦ç´ ã¯æå¤§å¤ãæã¡ã¾ããã
ãã®å¤ã¯ min
屿§ã§æå®ããããã®ããå¾ããåãå¹´ã¨é±ãæå®ããå¿
è¦ãããã¾ãã
åãä»ããæãæ©ãå¹´ã¨é±ã§ããè¦ç´ ã® value
ãããããå°ããã¨ãè¦ç´ ã¯å¶ç´æ¤è¨¼ã«å¤±æãã¾ãã屿§ã®å¤ã妥å½ãªé±ã®æååã§ã¯ãªãå ´åãè¦ç´ ã¯æå°å¤ãæã¡ã¾ããã
ãã®å¤ã¯ max
屿§ã§æå®ããããã®ããåããåãå¹´ã¨é±ãæå®ããå¿
è¦ãããã¾ãã
è«ç屿§ã§ãåå¨ããã°ãã¦ã¼ã¶ã¼ãç·¨éãããã¨ãã§ããªããã¨ã表ãã¾ãããããã value
ã¯ã JavaScript ã³ã¼ãããç´æ¥ HTMLInputElement
ã® value
ããããã£ãè¨å®ãããã¨ã§å¤æ´ãããã¨ãã§ãã¾ãã
ã¡ã¢: èªã¿åãå°ç¨ãã£ã¼ã«ãã¯å¤ãæã¦ãªãããã required
㯠readonly
屿§ãæå®ããã¦ããå
¥åæ¬ã«ã¯å¹æãããã¾ããã
step
屿§ã¯ãå¤ãéµå®ããªããã°ãªããªãç²åº¦ãæå®ããæ°å¤ãã¾ãã¯ä¸è¨ã§è¨è¿°ããç¹å¥ãªå¤ any
ã§ããã¹ãããã®åºæºã¨ãªãå¤ï¼min
ãæå®ããå ´å㯠value
ããã以å¤ã®å ´åã¯é©åãªæ¢å®å¤ï¼ã¨åãå¤ã®ã¿ãæå¹ã¨ãªãã¾ãã
æååå¤ã® any
ã¯ãå»ã¿ããªããã©ã®å¤ã§ã許å¯ããããã¨ãæå³ãã¾ãï¼min
ã max
ãªã©ãä»ã®å¶ç´ã«ã¯å¶éããã¾ãï¼ã
ã¡ã¢: ã¦ã¼ã¶ã¼ããã¼ã¿ãå ¥åããã¨ãã«ã¯å»ã¿ã®è¨å®ã«ã¯å¸çãããã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãã¯ç´è¿ã®å¦¥å½ãªå¤ãåãè·é¢ã®å¤ã®é¸æè¢ã 2 ã¤ãã£ãå ´åã¯ãæ£ã®æ¹åã®æ¨å¥¨å¤ã«ä¸¸ãããã¾ãã
week
å
¥åæ¬ã§ã¯ã step
ã®å¤ã¯é±æ°ã§æå®ããã 604,800,000 ãä¹ãããã¾ãï¼ããªç§åä½ã®æ°å¤ã§ãããã)ã step
ã®æ¢å®å¤ã¯ 1 ã§ããã 1 é±ã表ãã¾ããæ¢å®ã®å»ã¿ã®æ¢å®å¤ã¯ -259,200,000 ã§ããã㯠1970 å¹´ã®æåã®é± (1970-W01
) ã§ãã
ç¾æç¹ã§ã week
å
¥åæ¬ã§ step
ã« any
ã®å¤ãä½ãæå³ããããä¸æç¢ºã§ããããã¯æ
å ±ãæ±ºå®æ¬¡ç¬¬ãæ´æ°ãããã§ãããã
week å
¥åæ¬ã¯ä¸è¦ããã¨ä¾¿å©ã«è¦ãã¾ããç°¡åã«é±ã鏿ããã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ãæä¾ããã¦ã¼ã¶ã¼ã®ãã±ã¼ã«ã«é¢ä¿ãªãããã¼ã¿å½¢å¼ãæ£è¦åãã¦ãµã¼ãã¼ã«éä¿¡ããããã§ãããããããã©ã¦ã¶ã¼ã®äºææ§ãéããã¦ããããã <input type="week">
ã«ã¯åé¡ãããã¾ãã
<input type="week">
ã®åºæ¬çãªä½¿ãæ¹ã¨å°ãè¤éãªä½¿ãæ¹ãè¦ã¦ã¿ã¦ããããã®å¾ã§ãã©ã¦ã¶ã¼ã®äºææ§ã®åé¡ãç·©åããã¢ããã¤ã¹ãæä¾ãã¾ããã (ãã©ã¦ã¶ã¼ã®å¯¾å¿ã®æ±ããåç
§ãã¦ãã ãã)ã
ãã£ã¨ãåºæ¬ç㪠<input type="week">
ã®ä½¿ç¨æ¹æ³ã¯ã次ã®ããã«åºæ¬ç㪠<input>
㨠<label>
è¦ç´ ã®çµã¿åããã§ãã
<form>
<label for="week">ã©ã®é±ããå§ãã¾ããã</label>
<input id="week" type="week" name="week" />
</form>
å
¥åæ¬ã®å¯¸æ³ã®å¶å¾¡
<input type="week">
㯠size
ã®ãããªå¯¸æ³ã«é¢ãã屿§ã«ã¯å¯¾å¿ãã¦ãã¾ããã寸æ³ã夿´ããå¿
è¦ãããå ´åã¯ã CSS ã使ç¨ããå¿
è¦ãããã¾ãã
step
屿§ã使ç¨ãã¦ãé±ã®çªå·ãå¢å ã¾ãã¯æ¸å°ããã¨ãã«é£ã°ãçªå·ã夿´ãããã¨ãã§ããã¯ãã§ããã対å¿ãã¦ãããã©ã¦ã¶ã¼ã§ãä½ãåä½ãã¦ããªãããã§ãã
æ¢å®ã§ã <input type="week">
ã¯å
¥åãããå¤ã®æ¤è¨¼ãè¡ãã¾ãããã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®å®è£
ã¯ä¸è¬çã«ã妥å½ãªå¹´ã¨é±ã§ãªããã®ã®å
¥åãããããããã¯ä¾¿å©ã§ãããããã§ãå
¥åæ¬ã空ã®ã¾ã¾ã«ãããã¨ãã§ããã¾ã鏿ã§ããé±ã®ç¯å²ãå¶éããããªãããããã¾ããã
min
ããã³ max
屿§ã使ç¨ãã¦ãã¦ã¼ã¶ã¼ã鏿ãããã¨ãã§ããæå¹ãªé±ãå¶éãããã¨ãã§ãã¾ãã以ä¸ã®ä¾ã§ã¯ãæå°å¤ã 2017 年第 1 é±
ã«ãæå¤§å¤ã 2017 年第 52 é±
ã«è¨å®ãã¦ãã¾ãã
<form>
<label for="week">ã©ã®é±ããå§ãã¾ããã</label>
<input id="week" type="week" name="week" min="2017-W01" max="2017-W52" />
<span class="validity"></span>
</form>
ä¸è¨ã®ä¾ã® CSS ã§ãã CSS ã® :valid
ããã³ :invalid
ããããã£ã使ç¨ãã¦ãç¾å¨ã®å¤ãæå¹ãã©ããã«åºã¥ãã¦ã¹ã¿ã¤ã«ãè¨å®ãã¦ãã¾ããã¢ã¤ã³ã³ã¯å
¥åæ¬ãã®ãã®ã§ã¯ãªããå
¥åæ¬ã®é£ã® <span>
ã«ç½®ãããã«ããªãã¨ã Chrome ã§ã¯ã³ã³ããã¼ã«ã®å
å´ã«ã³ã³ãã³ããçæããã®ã§ãæ£ããæ´å½¢ããã表示ããããããã¨ãã§ãã¾ããã
div {
margin-bottom: 10px;
position: relative;
}
input[type="number"] {
width: 100px;
}
input + span {
padding-right: 30px;
}
input:invalid + span::after {
position: absolute;
content: "â";
padding-left: 5px;
}
input:valid + span::after {
position: absolute;
content: "â";
padding-left: 5px;
}
ãã®çµæã¯ã対å¿ãããã©ã¦ã¶ã¼ã§ã¯ 2017 å¹´ã®ç¬¬ 1 é±ãã第 52 é±ã®éãæå¹ã«è¦ãã鏿ãããã¨ãã§ãã¾ãã
é±ã®å¤ãå¿ é ã«ããå ãã¦ãrequired
屿§ã使ç¨ãã¦ãé±ã®å
¥åãå¿
é ã«ãããã¨ãã§ãã¾ããçµæã¨ãã¦ã対å¿ãã¦ãããã©ã¦ã¶ã¼ã§ã¯é±ã®å
¥åæ¬ã空æ¬ã®å ´åã«ã¨ã©ã¼ã表示ãã¾ãã
ä¾ãè¦ã¦ã¿ã¾ããããé±ã®æå°å¤ã¨æå¤§å¤ãè¨å®ãããã¤ãã£ã¼ã«ããå¿ é ã«è¨å®ãã¦ãã¾ãã
<form>
<div>
<label for="week">ã©ã®é±ããå§ãã¾ããã</label>
<input
id="week"
type="week"
name="week"
min="2017-W01"
max="2017-W52"
required />
<span class="validity"></span>
</div>
<div>
<input type="submit" value="ãã©ã¼ã ãéä¿¡" />
</div>
</form>
ãã©ã¼ã ã«å¤ãè¨å®ããã«éä¿¡ãããã¨ããã¨ããã©ã¦ã¶ã¼ã¯ã¨ã©ã¼ã表示ãã¾ããä¾ãå®è¡ãã¦ã¿ã¦ãã ããã
対å¿ãã¦ããªããã©ã¦ã¶ã¼ã使ç¨ãã¦ããæ¹ã®ããã®ã¹ã¯ãªã¼ã³ã·ã§ããã§ãã
è¦å: HTML ã®ãã©ã¼ã æ¤è¨¼ã¯ãå ¥åããããã¼ã¿ãæ£ããå½¢å¼ã§ãããã¨ãä¿è¨¼ããã¹ã¯ãªããã®ä»£ç¨ã«ã¯ãªãã¾ããã HTML ã調æ´ãã¦æ¤è¨¼ããããæããããå®å ¨ã«åé¤ããããããã¨ã¯ã¨ã¦ãç°¡åã«ã§ãã¾ãã HTML ãå®å ¨ã«ãã¤ãã¹ãããµã¼ãã¼ã«ç´æ¥ãã¼ã¿ãéä¿¡ãããã¨ãå¯è½ã§ãããµã¼ãã¼å´ã®ã³ã¼ããåä¿¡ãããã¼ã¿ã®æ¤è¨¼ã«å¤±æããå ´åãä¸é©åãªå½¢å¼ã®ãã¼ã¿ï¼ã¾ãã¯å¤§ãããããã¼ã¿ãééã£ã種é¡ã®ãã¼ã¿ãªã©ï¼ãéä¿¡ãããå ´åã«ç½å®³ãçºçããããããããã¾ãã
ãã©ã¦ã¶ã¼ã®äºææ§ã®æ±ãåè¿°ã®ããã«ãç¾æç¹ã§ week å ¥åæ¬ãå©ç¨ããä¸ã§ä¸çªã®åé¡ã¯ãã©ã¦ã¶ã¼ã®äºææ§ã§ãããã¹ã¯ãããã§ã¯ Safari 㨠Firefox ã¯å¯¾å¿ãã¦ãããã IE ã®å¤ããã¼ã¸ã§ã³ã対å¿ãã¦ãã¾ããã
Android ã iOS ã®ãããªã¢ãã¤ã«ãã©ãããã©ã¼ã ã¯ããã®ãããªå
¥ååãå®å
¨ã«ãªã£ã¦ãããã¿ããã¹ã¯ãªã¼ã³ç°å¢ã§å®ã«ç°¡åã«å¤ã鏿ã§ããå°ç¨ã®ã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã³ã³ããã¼ã«ãæä¾ãã¾ããä¾ãã°ã Android ç Chrome ã® week
鏿ã¯ã次ã®ããã«ãªã£ã¦ãã¾ãã
対å¿ãã¦ããªããã©ã¦ã¶ã¼ã§ã¯å®å ¨ã«ããã¹ãå ¥åæ¬ã«æ ¼ä¸ãããã¾ãããããã¯ã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ä¸è²«æ§ï¼è¡¨ç¤ºãããã³ã³ããã¼ã«ãç°ãªããã¨ï¼ã¨ãã¼ã¿ã®æ±ãã® 2 ã¤ã®åé¡ãçãã¾ãã
2 ã¤ç®ã®åé¡ã¯ããæ·±å»ã§ãããã§ã«è¿°ã¹ãããã«ã week
å
¥åæ¬ã§ã¯ãå®éã®å¤ã常㫠yyyy-Www
ã®æ¸å¼ã§æ£è¦åããã¾ãããã©ã¦ã¶ã¼ãä¸è¬çãªããã¹ãå
¥åæ¬ã«ãã©ã¼ã«ããã¯ããå ´åãã¦ã¼ã¶ã¼ãæ£ããæ¸å¼ã§å
¥åããããæ¡å
ãããã¨ãã§ãã¾ãã (ããã¦ãããããèªèã§ãã¾ãã)ã人éãé±ã®å¤ãæ¸ãã«ã¯ã次ã®ããã«è²ã
ãªæ¹æ³ãããã¾ãã
2017 年第 1 é±
Week 1 2017
2017-W01
ãã©ã¦ã¶ã¼ã«ä¾åããªãæ¹æ³ã«ãã£ã¦ãã©ã¼ã ã§å¹´ã¨é±ãæ±ãæåã®æ¹æ³ã¯ãç¾æç¹ã§ã¯å¹´ã¨é±ãå¥ã
ãªã³ã³ããã¼ã«ï¼<select>
è¦ç´ ã§å
¥åãããã®ãä¸è¬çã§ãã以ä¸ã®å®è£
ãè¦ã¦ãã ããï¼ã«ãããã jQuery date picker ã®ãã㪠JavaScript ã©ã¤ãã©ãªã¼ã使ç¨ãããã¨ã§ãã
ãã®ä¾ã§ã¯ãé±ã鏿ããã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®è¦ç´ ã 2 çµçæãã¾ãããã¤ãã£ãã® <input type="week">
å
¥åæ¬ã¨ã week
å
¥åæ¬ã«å¯¾å¿ããªãå¤ããã©ã¦ã¶ã¼ã§å¹´ã¨é±ã鏿ããããã®ã 2 ã¤ã® <select>
è¦ç´ ã§ãã
HTML ã¯æ¬¡ã®ããã«ãªãã¾ãã
<form>
<div class="nativeWeekPicker">
<label for="week">ã©ã®é±ããå§ãã¾ããã</label>
<input
id="week"
type="week"
name="week"
min="2017-W01"
max="2018-W52"
required />
<span class="validity"></span>
</div>
<p class="fallbackLabel">ã©ã®é±ããå§ãã¾ããã</p>
<div class="fallbackWeekPicker">
<div>
<span>
<label for="week">Week:</label>
<select id="fallbackWeek" name="week"></select>
</span>
<span>
<label for="year">Year:</label>
<select id="year" name="year">
<option value="2017" selected>2017</option>
<option value="2018">2018</option>
</select>
</span>
</div>
</div>
</form>
é±ã®å¤ã¯ä»¥ä¸ã® JavaScript ã®ã³ã¼ãã§åçã«çæããã¾ãã
div {
margin-bottom: 10px;
position: relative;
}
input[type="number"] {
width: 100px;
}
input + span {
padding-right: 30px;
}
input:invalid + span::after {
position: absolute;
content: "â";
padding-left: 5px;
}
input:valid + span::after {
position: absolute;
content: "â";
padding-left: 5px;
}
ããä¸ã¤ã®é¢ç½ãé¨åã¯ãæ©è½ã®æ¤åºã³ã¼ãã§ãããã©ã¦ã¶ã¼ã <input type="week">
ã«å¯¾å¿ãã¦ãããã©ãããæ¤åºããããã«ãæ°ã㪠<input>
è¦ç´ ãçæãããã® type
ã week
ã«è¨å®ã¦ã¿ã¦ãããã« type
ã«ä½ãè¨å®ããããããã§ãã¯ãã¾ãã対å¿ãã¦ããªããã©ã¦ã¶ã¼ã§ã¯ã week
åã text
åã¸ä»£æ¿ããã¾ãã <input type="week">
ã«å¯¾å¿ãã¦ããªãå ´åã¯ããã¤ãã£ãã®æ¥æå
¥åæ¬ãé表示ã«ãã¦ä»£æ¿ç¨ã® (<select>
) ã«ãã鏿ã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ã表示ãã¾ãã
// 夿°ãå®ç¾©
const nativePicker = document.querySelector(".nativeWeekPicker");
const fallbackPicker = document.querySelector(".fallbackWeekPicker");
const fallbackLabel = document.querySelector(".fallbackLabel");
const yearSelect = document.querySelector("#year");
const weekSelect = document.querySelector("#fallbackWeek");
// æåã¯ãã©ã¼ã«ããã¯ãé表示ã«ãã
fallbackPicker.style.display = "none";
fallbackLabel.style.display = "none";
// æ°ããæ¥ä»å
¥åãæååå
¥åã«ãã©ã¼ã«ããã¯ããããã©ãã
const test = document.createElement("input");
try {
test.type = "week";
} catch (e) {
console.log(e.description);
}
// ããæååå
¥åã«ãªããªãã°ã if () {} ãããã¯ã®ä¸ã®ã³ã¼ããå®è¡ãã
if (test.type === "text") {
// ãã¤ãã£ãã®æ¥ä»é¸æãé ãã¦ãã©ã¼ã«ããã¯çã表示
nativePicker.style.display = "none";
fallbackPicker.style.display = "block";
fallbackLabel.style.display = "block";
// é±ãåçã«çæãã
populateWeeks();
}
function populateWeeks() {
// é±ã®é¸æè¢ã 52 é±ã§çæ
for (let i = 1; i <= 52; i++) {
const option = document.createElement("option");
option.textContent = i < 10 ? `0${i}` : i;
weekSelect.appendChild(option);
}
}
ã¡ã¢: 53 é±ããå¹´ããããã¨ãå¿ããªãã§ãã ããï¼å¹´ãããã®é±æ°ãåç §ï¼ãååã®ã¢ããªãéçºããã¨ãã¯ããã念é ã«ç½®ãã¦ããå¿ è¦ãããã¾ãã
æè¡çæ¦è¦ 仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ å ±RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4