質問編集履歴

4

fix

2018/03/17 16:14

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -196,6 +196,14 @@
196
196
 
197
197
  追記2
198
198
 
199
+ 先ほどの書き方でロジックはいけていたようです。
200
+
201
+ data-disableは開発ツールのElementsではtrueになりませんでした。
202
+
203
+ が、alertを追記してわかりやすくした結果、data-disableの値はちゃんと変わっていたようです。
204
+
205
+
206
+
199
207
  ```html
200
208
 
201
209
  <!DOCTYPE html>

3

fix

2018/03/17 16:14

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -191,3 +191,97 @@
191
191
 
192
192
 
193
193
  ```
194
+
195
+ ---
196
+
197
+ 追記2
198
+
199
+ ```html
200
+
201
+ <!DOCTYPE html>
202
+
203
+ <html>
204
+
205
+ <head>
206
+
207
+ <meta charset="utf-8">
208
+
209
+ <title>jQueryのsubmit()サンプル</title>
210
+
211
+ <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
212
+
213
+ </head>
214
+
215
+ <body>
216
+
217
+ <style>
218
+
219
+ p {
220
+
221
+ font-size: 13px;
222
+
223
+ }
224
+
225
+ </style>
226
+
227
+ <p>「送信」をクリックすると確認ダイアログが出ます。</p>
228
+
229
+ <!doctype html>
230
+
231
+ <meta charset="utf-8">
232
+
233
+ <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
234
+
235
+ <form action="" method="post" data-disable="false">
236
+
237
+ <input type="text" name="textBox">
238
+
239
+ <input type="submit" name="send" id="submit">
240
+
241
+ </form>
242
+
243
+ <script>
244
+
245
+ $(function() {
246
+
247
+ $('form').submit(function() {
248
+
249
+ var form = $(this);
250
+
251
+ // if (form.hasClass('mou-tsukaenai')) {
252
+
253
+ if (form.data('disable')){
254
+
255
+ event.preventDefault();
256
+
257
+ alert('このフォームはもう使えません');
258
+
259
+ } else {
260
+
261
+ // form.addClass('mou-tsukaenai');
262
+
263
+ form.data('disable', true);
264
+
265
+ // テストのため、通常の送信もキャンセルする
266
+
267
+ alert('送信しました');
268
+
269
+ event.preventDefault();
270
+
271
+ }
272
+
273
+ });
274
+
275
+ });
276
+
277
+ </script>
278
+
279
+
280
+
281
+
282
+
283
+ </body>
284
+
285
+ </html>
286
+
287
+ ```

2

修正

2018/03/17 16:08

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -166,8 +166,6 @@
166
166
 
167
167
  if (form.data('disable')) {
168
168
 
169
- // disabledがついているなら、無視する。
170
-
171
169
  event.preventDefault();
172
170
 
173
171
  } else {

1

追記

2018/03/17 15:25

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -101,3 +101,95 @@
101
101
 
102
102
 
103
103
  ```
104
+
105
+
106
+
107
+
108
+
109
+ ---
110
+
111
+
112
+
113
+ 追記
114
+
115
+ 未だ非活性処理がうまくいっていません。
116
+
117
+ form属性にあるdata-disableがtrueになりません。
118
+
119
+
120
+
121
+ ```ここに言語を入力
122
+
123
+ <!DOCTYPE html>
124
+
125
+ <html>
126
+
127
+ <head>
128
+
129
+ <meta charset="utf-8">
130
+
131
+ <title>jQueryのsubmit()サンプル</title>
132
+
133
+ <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
134
+
135
+ </head>
136
+
137
+ <body>
138
+
139
+ <style>
140
+
141
+ p {
142
+
143
+ font-size: 13px;
144
+
145
+ }
146
+
147
+ </style>
148
+
149
+ <p>「送信」をクリックすると確認ダイアログが出ます。</p>
150
+
151
+ <form action="" method="post" data-disable="false">
152
+
153
+ <input type="text" name="textBox">
154
+
155
+ <input type="submit" name="send" id="submit">
156
+
157
+ </form>
158
+
159
+ <script>
160
+
161
+ $(function() {
162
+
163
+ $('form').submit(function() {
164
+
165
+ var form = $(this);
166
+
167
+ if (form.data('disable')) {
168
+
169
+ // disabledがついているなら、無視する。
170
+
171
+ event.preventDefault();
172
+
173
+ } else {
174
+
175
+ form.data('disable', true);
176
+
177
+ }
178
+
179
+ });
180
+
181
+ });
182
+
183
+ </script>
184
+
185
+
186
+
187
+
188
+
189
+ </body>
190
+
191
+ </html>
192
+
193
+
194
+
195
+ ```