﻿var currentIndex = -1;
var searchReq = createReq();
//创建XMLHttpRequest的第二种方法
function createReq() {
    var httpReq;

    if (window.XMLHttpRequest) {
        httpReq = new XMLHttpRequest();
        if (httpReq.overrideMimeType) {
            httpReq.overrideMimeType('text/xml');
        }
    }
    else if (window.ActiveXObject) {
        try {
            httpReq = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (e) {
            try {
                httpReq = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (e) {
            }
        }
    }
    return httpReq;
}
//发送HTTP请求，当输入框的内容变化时，会调用该函数
function searchSuggest1() {

    var keyCode = event.keyCode;
    var str = escape(document.getElementById("allkey").value);

    if (event.keyCode == 38 || event.keyCode == 40)
        selItemByKey1(event.keyCode);
    else {
        if (str != "") {
            searchReq.open("get", "/Home/AjaxSearch?searchText=" + str, true);

            searchReq.onreadystatechange = handleSearchSuggest1;
            searchReq.send(null);
            currentIndex = -1;

        }
    }
}

//通过键盘选择下拉项
function selItemByKey1(keyCode) {
    //下拉表
    var autoNodes = search_suggesthead.childNodes;
    if (autoNodes.length > 0) {
        if (keyCode == 38) {  //按下Up键
            // alert(keyCode);
            if (currentIndex <= 0)
                currentIndex = autoNodes.length - 1;
            else
                currentIndex--;
            document.getElementById("allkey").value = autoNodes[currentIndex].innerHTML;
            autoNodes[currentIndex].className = "suggest_link_over";
            if (currentIndex < autoNodes.length - 1)
                autoNodes[currentIndex + 1].className = "suggest_link";
            else
                if (autoNodes.length <= 1) {
            }
            else {
                autoNodes[0].className = "suggest_link";
            }
        }

        if (keyCode == 40) {  //按下Down键
            if (currentIndex >= autoNodes.length - 1)
                currentIndex = 0;
            else
                currentIndex++;
            document.getElementById("allkey").value = autoNodes[currentIndex].innerHTML;
            autoNodes[currentIndex].className = "suggest_link_over";
            if (currentIndex > 0)
                autoNodes[currentIndex - 1].className = "suggest_link";
            else
                if (autoNodes.length <= 1) {
            }
            else {
                autoNodes[autoNodes.length - 1].className = "suggest_link";
            }
        }

    }
}

//当 onreadystatechange 值变化时，会调用该函数
//注意searchSuggest()中的这一句searchReq.onreadystatechange = handleSearchSuggest;
function handleSearchSuggest1() {
    if (searchReq.readyState == 4) {
        if (searchReq.status == 200) {
            var suggestText = document.getElementById("search_suggesthead");
            var sourceText = searchReq.responseText.split("\n");
            if (sourceText.length > 1) {
                suggestText.style.display = "";
                suggestText.innerHTML = "";
                for (var i = 0; i < sourceText.length - 1; i++) {
                    var s = '<div onmouseover="javascript:suggestOver1(this);"';
                    s += ' onmouseout="javascript:suggestOut1(this);" ';
                    s += ' onclick="javascript:setSearch1(this.innerHTML);" ';
                    s += ' class="suggest_link">' + sourceText[i] + '</div>';
                    suggestText.innerHTML += s;
                }
            }
            else {
                suggestText.style.display = "none";
            }
        }
    }
}

function suggestOver1(div_value) {
    div_value.className = "suggest_link_over";
    document.getElementById("allkey").value = div_value.firstChild.nodeValue;
}

function suggestOut1(div_value) {
    div_value.className = "suggest_link";
}

function setSearch1(obj) {
    document.getElementById("allkey").value = obj;
    var div = document.getElementById("search_suggesthead");
    div.innerHTML = "";
    div.style.display = "none";
    var keys = document.getElementById("allkey").value;
    var url = "/Game/Search?sort=1&sortad=1&ctype=2&gtype=0&glan=0&gsize=0&kvalue=" + keys + "&gsize_s=&gsize_b=";
    window.open(url, '_self');
}

function makeURLSearch1(o) {
    var keys = document.getElementById("allkey").value;
    if (keys == "") {
        document.getElementById("allkey").focus();
        return false;
    }

    var url = "/Game/Search?sort=1&sortad=1&ctype=2&gtype=0&glan=0&gsize=0&kvalue=" + keys + "&gsize_s=&gsize_b=";
    window.open(url, '_self');
    return false;
}
function tbblur1() {
    var div = document.getElementById("search_suggesthead");
    //div.innerHTML = "";
    div.style.display = "none";
}
