ホームページ > 記事 > ウェブフロントエンド > jQuery_jquery をカプセル化する Ajax リクエストのグローバル設定
概要:
jQuery はプロジェクトで最も一般的な js ライブラリであり、フロントエンド開発でよく使用されるライブラリです。以下は、プロジェクト内の jQuery をカプセル化し、全員で共有する Ajax です。
コード:
},
エラー: function(xhr, status, handler) {
if (opt.error)
opt.error();
}
};
};
関数 unescapeEntity(str) {
var reg = /&(?:nbsp|#160|lt|#60|gt|62|amp|#38|quot|#34|cent|#162|ポンド|#163|円|#165|ユーロ|# 8364|セクト|#167|コピー|#169|reg|#174|トレード|#8482|回|#215|除算|#247);/g,
エンティティ = {
' ' : ' ',
' ' : ' ',
「<」 : '<'、
'<' : '<',
「>」 : '>'、
'&62;' : '>'、
'&' : '&',
'&' : '&',
'"' : '"',
'"' : '"',
'¢' : '¢',
'¢' : '¢',
「£」 : 「£」、
'£' : '£',
'\' : '\',
'\' : '\',
'€' : '?'、
'€' : '?'、
'§' : '§',
'§' : '§',
'©' : '©',
'©' : '©',
'®' : '®',
'®' : '®',
'™' : '™',
'™' : '™',
'×' : '×',
'×' : '×',
'÷' : '÷',
'÷' : '÷'
};
if (str === null) {
'';
を返します
}
str = str.toString();
return str.indexOf(';') < 0 ? str : str.replace(reg, function(chars) {
return エンティティ[chars];
});
}
// 转换htmlの实体
$.ajaxSetup({
グローバル : true、
キャッシュ : false、
コンバータ: {
'テキスト json' : function(response){
return jQuery.parseJSON(unescapeEntity(response));
}
}
});
/*
*Ajax 请求权限异常
* 用户权制限错误跳转登陆页
* 404错误跳转404页面
*/
$(document).ajaxComplete(function(evt, req, settings){
if(req && req.responseJSON){
var json = req.responseJSON;
if(json.code === 403 && json.info === 'パーマエラー' && !json.success){
window.location.href = location.protocol '//' location.hostname;
戻る;
}
if(json.code === 404 && !json.success) {
window.location.href = location.protocol '//' location.hostname '/404.html';
}
}
});
/*
*Ajax リクエストのエラー メッセージ
※例:500エラー
*返されるエラーメッセージの形式
*{
* コード: 500、
* 情報: システム例外
*}
*/
$(document).ajaxError(function(evt, req, settings){
If(req && (req.status === 200||req.status === 0)){ return false }
var msg = 'エラー:';
If(req && req.responseJSON){
var json = req.responseJSON;
msg = json.code||'';
msg = json.info||'システム例外が発生しました。もう一度お試しください';
}その他{
msg = 'システム例外。もう一度お試しください';
}
アラート(メッセージ);
});
概要:
Ajax リクエストを実行するときは、次のように ajaxSettings 関数を呼び出すだけです。
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。