ホームページ >ウェブフロントエンド >jsチュートリアル >Jquery Ajaxリクエストファイルのダウンロード操作の失敗に対処する方法

Jquery Ajaxリクエストファイルのダウンロード操作の失敗に対処する方法

php中世界最好的语言
php中世界最好的语言オリジナル
2018-04-23 11:32:441731ブラウズ

今回は、Jquery Ajax リクエスト ファイルのダウンロード 失敗した操作を処理する方法? Jquery Ajax リクエスト ファイルのダウンロード操作が失敗した場合の の注意事項 は何ですか? ここでは実際のケースを見てみましょう。

jQuery は確かに非常に優れた軽量 JS フレームワークであり、JS アプリケーションを迅速に開発するのに役立ち、

JavaScript コードを記述する習慣をある程度変えました。この記事では、Jquery Ajax リクエスト ファイルの紹介に焦点を当てます。ダウンロード操作の失敗の原因の分析と解決策。Ajax リクエストの失敗の原因の分析に興味のある友人は、ぜひ一緒に学んでください。

jQuery は、JS アプリケーションを迅速に開発するのに役立つ非常に優れた軽量の JS フレームワークです。 JavaScript コードを書く習慣がある程度変わりました。

これ以上はナンセンスです。まず、失敗の理由を分析しましょう

1. 失敗の理由

通常、要求元のブラウザは応答出力を処理します。ただし、ajax リクエストは「文字タイプ」リクエストのみです。つまり、リクエストされたコンテンツはテキストタイプで保存されます。ファイルはバイナリ形式でダウンロードされますが、返された応答は読み取ることができますが、単純に言うと、js はブラウザのダウンロード処理機構やプログラムを呼び出すことができません。

2. 解決策

1) jquery を使用してフォームを作成し、それを送信してファイルのダウンロードを実装できます。

var form = $("<form>");
form.attr("style","display:none");
form.attr("target","");
form.attr("method","post");
form.attr("action",rootPath + "T_academic_essay/DownloadZipFile.do");
var input1 = $("<input>");
input1.attr("type","hidden");
input1.attr("name","strZipPath");
input1.attr("value",strZipPath);
$("body").append(form);
form.append(input1);
form.submit();
form.remove();
2) ファイルのダウンロードを実装するには、a タグを直接使用できます。 =”ダウンロード アドレス”> クリックしてダウンロード

3) 非表示の iframe または新しいフォームを使用して解決します。

追記: AJAX リクエスト $.ajax メソッドの使用

AJAX リクエストをより詳細に制御するには、jQuery の $.ajax メソッドを使用します。 AJAX リクエストに対してきめ細かいレベルの制御を実行します。

$.ajax 構文

$.ajax(オプション)パラメータオプション戻り値

(オブジェクト) オブジェクトのインスタンス、そのプロパティこの操作のパラメータが定義されています。詳細については、以下の表を参照してください。

XHR の例

オプションの詳細範囲値

に渡す前に実行される後続の処理 (ある場合) を決定します。有効な値は次のとおりです: xml - 応答テキストは XML ドキュメントに解析され、結果の XML DOM がコールバック関数に渡されます。

name

type

description

url

string

リクエストされた URL アドレス

タイプ

String

使用される HTTP メソッド。通常は POST または GET です。省略した場合、デフォルトは GET

data

object

プロパティがクエリパラメータとしてリクエストに渡されるオブジェクト。 GET リクエストの場合、データはクエリ文字列として渡され、POST リクエスト の場合、データはリクエスト本文として渡されます。どちらの場合も、応答によって返されるデータの型を処理するのは $.ajax() ユーティリティ関数です。この値は、データを

コールバック関数

html - 応答テキストは未処理でコールバック関数に渡されます。返された HTML フラグメント内の