//XMLHttpRequestオブジェクト生成
var xmlHttp;

if ((xmlHttp = createXmlHttpRequest()) == null) {
        window.alert("XMLHTTP Initialization Failed.");
    } else {
        xmlHttp.abort();    // 連続して HTTP 通信する場合は必ず呼び出す。
    }

//onclickイベントで実行される処理。リクエストを生成し、レスポンスを取得
function sendCheckObj(){
  var temp1 = document.getElementById('u_handle').value;
  if(temp1 != ''){
  
  //リクエストをオープンする。単に設定がおこなわれるだけで実際の送受信はまだ発生しない
  var url = '/ajax/check.php?handle='+temp1;
  
  xmlHttp.open('GET', url, true);
  
  //バックエンドプログラムからレスポンスを受信し処理を行うためのコールバック関数を用意しておく
  xmlHttp.onreadystatechange = handleHttpEvent;
  
  //document.getElementById('data').innerHTML = '<font color="red">ご希望のユーザ名は使用可能です</font>';
  //document.getElementById("data").innerHTML = xmlHttp.responseText;
  
  //リクエストを送信
  xmlHttp.send(null);
  }
  
}

//ブラウザ別にXMLHttpRequestオブジェクトを生成
function createXmlHttpRequest(){
  var xmlHttp;
  //IEかどうか判定
  /*@cc_on
  @if (@_jscript_version >= 5)
  try{
    xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
    try{
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }catch(ex){
      xmlHttp = false;
    }
  }
  @else
    xmlHttp = false;
  @end @*/
  //IE以外
  if (!xmlHttp && typeof XMLHttpRequest != 'undefined'){
    try{
      xmlHttp = new XMLHttpRequest();
      xmlHttp.overrideMimeType("text/xml");
    }catch(e){
      xmlHttp = false;
    }
  }
  return xmlHttp;
}

// コールバック関数。
// 上の xmlHttp.onreadystatechange = handleHttpEvent; で関連付けられている。
function handleHttpEvent() {

    // readyState の番号の意味は以下の通り。
    // 0 = uninitialized
    // 1 = loading
    // 2 = loaded
    // 3 = interactive
    // 4 = complete
    if ( xmlHttp.readyState == 1) {
        // "data" とは、<body> の中の、<span id="data"> の部分
        // よって、この部分に "Loading..." が表示される（表示は一瞬だけとなる）
        //document.getElementById("data").innerHTML = "Loading...";
    }
    else if ( xmlHttp.readyState == 2) {
        // "data" とは、<body> の中の、<span id="data"> の部分
        // よって、この部分に "Loaded." が表示される（表示は一瞬だけとなる）
        //document.getElementById("data").innerHTML = "Loaded";
    }
    else if (xmlHttp.readyState == 4
         &&  xmlHttp.status == 200) {    // 200 は、HTTP プロトコルにおける正常終了
         if(xmlHttp.responseText == 'OK') {
           document.getElementById("data").innerHTML = 'ご希望のユーザ名は使用可能です';
         }else if (xmlHttp.responseText == 'NG'){
           document.getElementById("data").innerHTML = 'ご希望のユーザ名は既に使用されています';
         }else if (xmlHttp.responseText == 'NG2'){
           document.getElementById("data").innerHTML = 'ご希望のユーザ名は使用できません';
         }
         
    }
}
