window.onload = function() {
  setIncrementalSearch();
}

function setIncrementalSearch() {
  var q = document.getElementById("q");
  if (q.addEventListener) {
    q.addEventListener("keyup", query, false) //Firefox, Opera, Safari
  } else {
    q.attachEvent("onkeyup", query); //IE
  }
  setInterval("query()", 700); 
}

var keyword_save = "~^|"; //dummy
var xmlhttp = null;
var baseTime = new Date();
var c = 0;

function query(flg) {
  //キーワード欄への入力内容
  var q = document.getElementById('q').value; 

  //URIエンコード
  var keyword = encodeURI(q);                 

  //前回入力時刻との差（ミリ秒）
  var elapsed = parseInt((new Date()).getTime() - baseTime.getTime());  
  //基準時間の更新
  baseTime = new Date(); 
  //600ミリ秒内に次の文字が入力された場合は
  //キーワード入力中とみなして中断する
  if (elapsed < 600) { 
    return; 
  } 
  //XMLHttpRequestを生成する
  if (!xmlhttp) xmlhttp = createXMLHttp(); 
  if (!xmlhttp || xmlhttp.readyState == 1 
               || xmlhttp.readyState == 2 
               || xmlhttp.readyState == 3) {
    return; 
  }

  if (keyword_save != keyword) {  //  && keyword != ""
    xmlhttp.open("GET", "/jts/searchSick?keyword=" + keyword, true);
    xmlhttp.onreadystatechange = function() {
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        document.getElementById("result").innerHTML 
          = xmlhttp.responseText;
        if (keyword != "") {
          document.getElementById("sicklist").style.display = 'none';
        } else {
          document.getElementById("sicklist").style.display = 'inline';
        }
      }
    }
    xmlhttp.send(null)
    keyword_save = keyword; //キーワード保存
  }// else if (keyword == "") {
//    document.getElementById("sicklist").style.display = 'inline';
//    if (document.getElementById("result").innerHTML != "") {
//      document.getElementById("result").innerHTML = "";
//    }
//  }
}
