2016-03-24 9 views
1

私はExtJS 6.0で作業していました。私は、アプリケーションサーバーからデータを取得するためにAjax Requestを使用します。私の現在のビューonClick of OKボタンで、ペイロードをサービスに渡すことによってAjaxコールを作成しています。同時に、キャンセルボタンで画面をマスキングしています。時折、サービスに応答するのに時間がかかります。ユーザは、キャンセルボタンをクリックしてその検索を再定義し、再びその行動を行うと考えるかもしれない。マスキング画面でキャンセルがクリックされたが、Ajaxが中止されていないときに画面のマスクを解除していました。サービスが応答するとすぐに古いデータがロードされます。古いAjaxリクエストを停止/中止する方法はありますか?ExtJSでAjaxリクエストを中止する

答えて

3

この

var requestId = Ext.Ajax.request({...}); 

Ext.Ajax.abort(requestId); 
+0

または単に 'requestId.abortを()'試してみてください。ファイルアップロードでフォーム提出をキャンセルする必要がある場合は、さらに複雑になります。 – serg

+0

マスキング画面でキャンセルボタンをクリックするたびに、アヤックスリクエストで中止する必要があります。画面のマスクを解除するためのキャンセルハンドラがあります。キャンセルボタンがクリックされたときにリクエストを中止する方法 – Arun

+0

ここで説明したようにリクエストを中止することはできますが、サーバーは依然としてリクエストを処理しており、最終的にはリッスンしていないクライアントに戻ります。それが懸念されている場合は、これも処理することをお勧めします。 –

関連する問題