回答編集履歴
2
追記
answer
CHANGED
@@ -15,4 +15,31 @@
|
|
15
15
|
<option value="2014" disabled>2014</option>
|
16
16
|
<option value="2013" disabled>2013</option>
|
17
17
|
</select>
|
18
|
+
```
|
19
|
+
|
20
|
+
# 追記
|
21
|
+
とりあえずjavascriptで今年を引っ張ってきて、optionのテキストと
|
22
|
+
比べてみました
|
23
|
+
|
24
|
+
```javascript
|
25
|
+
$(function(){
|
26
|
+
var thisyear=(new Date()).getFullYear();
|
27
|
+
$('#hoge option').each(function(){
|
28
|
+
if(Math.abs($(this).html()-thisyear)>1){
|
29
|
+
$(this).attr("disabled",true);
|
30
|
+
}
|
31
|
+
});
|
32
|
+
});
|
33
|
+
```
|
34
|
+
|
35
|
+
```HTML
|
36
|
+
<select id="hoge" name="hoge">
|
37
|
+
<option value="2019">2019</option>
|
38
|
+
<option value="2018">2018</option>
|
39
|
+
<option value="2017">2017</option>
|
40
|
+
<option value="2016" selected>2016</option>
|
41
|
+
<option value="2015">2015</option>
|
42
|
+
<option value="2014">2014</option>
|
43
|
+
<option value="2013">2013</option>
|
44
|
+
</select>
|
18
45
|
```
|
1
追記
answer
CHANGED
@@ -1,3 +1,18 @@
|
|
1
1
|
もちろん、セレクトボックスが選ばれたあとイレギュラーな値の場合は
|
2
2
|
デフォルトに戻すような処理をいれてもいいとは思いますが
|
3
|
-
最初から現在年プラマイ1年の3年分しか表示しないという選択肢はないのでしょうか?
|
3
|
+
最初から現在年プラマイ1年の3年分しか表示しないという選択肢はないのでしょうか?
|
4
|
+
|
5
|
+
# 追記
|
6
|
+
単純にやるなら、選択できない要素にdisableを設定することでしょうか
|
7
|
+
|
8
|
+
```HTML
|
9
|
+
<select name="hoge">
|
10
|
+
<option value="2019" disabled>2019</option>
|
11
|
+
<option value="2018" disabled>2018</option>
|
12
|
+
<option value="2017">2017</option>
|
13
|
+
<option value="2016" selected>2016</option>
|
14
|
+
<option value="2015">2015</option>
|
15
|
+
<option value="2014" disabled>2014</option>
|
16
|
+
<option value="2013" disabled>2013</option>
|
17
|
+
</select>
|
18
|
+
```
|