ajaxでgetとpost送信方法を利用するクラス
コード下記:
var ajaxHelper = {
//非同期オブジェクトを取得
GetXhr: function () {
var xhr;
if (window.XMLHttpRequest) {
//最新のブラウザを互換
xhr = new XMLHttpRequest();
} else { //古いブラウザを互換
xhr = new ActiveXObject(“Microsoft.XMLHTTP");
}
//非同期オブジェクトを返す
return xhr;
},
//getリクエストを定義
ajaxGet: function (url, callback) {
this.ajaxComm(“get", url, null, callback);
},
//postリクエストを定義
ajaxPost: function (url,params,callback) {
this.ajaxComm(“post",url,params,callback);
},
//共通リクエストメソッド
//method:get,post
//url:送信したリクエストアドレス
//parms:サーバにデータを送信
ajaxComm: function (method, url, params, callbakc) {
//非同期オブジェクトを作成
var xhr = this.GetXhr();
//パラメータを設定
xhr.open(method, url, params, callbakc);
//キャッシュを防ぐ
if (method == “get") {
xhr.setRequestHeader(“If-Modified-Since", “0");
} else {
xhr.setRequestHeader(“Content-Type", “application/x-www-form-urlencoded");
}
//コールバック関数を設定
xhr.onreadystatechange = function () {
if(xhr.readyState==4&&xhr.status==200){
var objdata = xhr.responseText;
var data = JSON.parse(objdata);
//ロジックの実行
callbakc(data);
}
}
//リクエストを送信
xhr.send(params);
}
}