回答編集履歴

1

ちょうせい

2019/08/26 05:24

投稿

yambejp
yambejp

スコア114883

test CHANGED
@@ -1 +1,39 @@
1
1
  $.ajaxのインスタンスに対して.abort()を発行してみてください
2
+
3
+
4
+
5
+ ```javascript
6
+
7
+ $(function(){
8
+
9
+ var ajax=new $.ajax({
10
+
11
+ url:"hoge.json",
12
+
13
+ }).done(function(data){
14
+
15
+ console.log(data);
16
+
17
+ });
18
+
19
+ setTimeout(function(){
20
+
21
+ ajax.abort();
22
+
23
+ console.log("abort");
24
+
25
+ },1000);
26
+
27
+ });
28
+
29
+ ```
30
+
31
+ 仮に、上記hoge.jsonの読み込みが1秒よりかかるなら
32
+
33
+ 非同期で処理するabortが実行されて、ajax処理はキャンセルされます
34
+
35
+
36
+
37
+ ※実際にはnewはなくてもいけるので、意味合い的には「$.ajaxの戻り値をabortする」
38
+
39
+ でよいかもしれません