回答編集履歴

4

修正

2019/08/22 04:56

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -57,3 +57,69 @@
57
57
  としたらselectYearセレクトボックスの内容も作る必要があります。
58
58
 
59
59
  どういう幅(何年~何年)で作る要件でしょうか?
60
+
61
+
62
+
63
+ ---------
64
+
65
+
66
+
67
+ 簡単にやるならこう。
68
+
69
+ 日付けの型のチェックも何もしてません。
70
+
71
+ ```html
72
+
73
+ <input name="textYear"> 年
74
+
75
+ <select name="selectMonth"></select> 月
76
+
77
+ ```
78
+
79
+ ```js
80
+
81
+ $(function(){
82
+
83
+ $('input[name="textYear"]').on('change keyup',function(){
84
+
85
+ $('select[name="selectMonth"] option').remove();
86
+
87
+ $('select[name="selectMonth"]').append($("<option></option>"));
88
+
89
+ if($(this).val() != ""){
90
+
91
+ for(i=4;i<=15;i++){
92
+
93
+ let m = (i<13)?i:(i-12);
94
+
95
+ m =('0' + m).slice(-length);
96
+
97
+
98
+
99
+ let op =$("<option></option>",{
100
+
101
+ value:$(this).val()+m,
102
+
103
+ html:$(this).val()+"年"+m+"月"
104
+
105
+
106
+
107
+ });
108
+
109
+ $('select[name="selectMonth"]').append(op);
110
+
111
+ }
112
+
113
+ }
114
+
115
+ });
116
+
117
+ });
118
+
119
+ ```
120
+
121
+
122
+
123
+ できれば[日付系の機能](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Date)を使って加算したほうが日付形式のチェックもできるので望ましいですが、自分で考えてみてください。
124
+
125
+ あくまで私の回答のコードは「とりあえず動くからOK」というだけの悪手です。

3

修正

2019/08/22 04:56

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -45,3 +45,15 @@
45
45
  `テキストボックスにブラウザ上で例えば2019年度と入力されているとき`という要件なので別のテキストボックスから取得してくるということでしょうか?
46
46
 
47
47
  そのHTMLも提示いただいた方が良さそうですね。
48
+
49
+ →理解しました。これは「テキストボックス」ではなく「セレクトボックス」ですね。
50
+
51
+
52
+
53
+ selectYearセレクトボックス選択→selectMonthセレクトボックス変更
54
+
55
+
56
+
57
+ としたらselectYearセレクトボックスの内容も作る必要があります。
58
+
59
+ どういう幅(何年~何年)で作る要件でしょうか?

2

修正

2019/08/21 00:56

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -12,9 +12,9 @@
12
12
 
13
13
  <select name="selectYear" onchange="setselectMonth()"></select>年度
14
14
 
15
+ ```
15
16
 
16
17
 
17
- ```
18
18
 
19
19
 
20
20
 

1

追記

2019/08/21 00:55

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -29,3 +29,19 @@
29
29
  <select name="selectMonth"></select>月
30
30
 
31
31
  ```
32
+
33
+
34
+
35
+ Nowという変数は宣言されていないのでエラーが出ると思います。
36
+
37
+ ```js
38
+
39
+ var NowMonth=Now.getMonth()+1;
40
+
41
+ console.log('value = ' + value + '= ' + NowMonth);
42
+
43
+ ```
44
+
45
+ `テキストボックスにブラウザ上で例えば2019年度と入力されているとき`という要件なので別のテキストボックスから取得してくるということでしょうか?
46
+
47
+ そのHTMLも提示いただいた方が良さそうですね。