var KX = window.KX || {};
KX.AC = KX.AC || {};
(function(KX){
    var t=0,//是否有高亮显示
    q=0,
    a="",
    b=0,
    u=0,
    i=0,
    c_value=";",
    k=0,
    new_num=0,
    over=0,
    fr_city="",
    to_city="",
    chezhan="",
    checi="",
    zhan_zhan=new Array(),
    station=new Array(),
    code=new Array(),
    x_key=0;


    KX.sugg_init_skb_fr=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_skb_fr=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_skb_fr=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    window.clearInterval(shuru_skb_fr);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_skb_fr($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });

        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    fr_city = $("#t_from").val();
                    to_city = $("#t_to").val();

                    zhan_zhan["action"] = "segment";
                    zhan_zhan["method"] = "getsuggestinfobynamepair";
                    zhan_zhan["from"] = encodeURI(fr_city);
                    zhan_zhan["to"] = encodeURI(to_city);

                    getXML_data(zhan_zhan,"zhan_zhan");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_skb_fr($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_skb_fr=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_skb_fr2){
                        clearTimeout(timeConter_skb_fr2);
                    }
                    var timeConter_skb_fr2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_skb_fr").hide();
                        element.children("iframe").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){


                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();
                            element.children("iframe").hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();
                            element.children("iframe").hide();

                            q=0;
                            k=0;
                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_skb_fr").show();
                            element.hide();
                            element.children("iframe").hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.children("iframe").height(element.find(".yui-ac-content").height());
                            element.children("iframe").width(element.width());
                            element.children("iframe").css("top","2px");
                            element.children("iframe").show();


                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });

                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.children("iframe").hide();
                            element.next(".noRep_skb_fr").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;
                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									fr_city = $("#t_from").val();
                            //									to_city = $("#t_to").val();
                            //
                            //									zhan_zhan["action"] = "segment";
                            //									zhan_zhan["method"] = "getsuggestinfobynamepair";
                            //									zhan_zhan["from"] = encodeURI(fr_city);
                            //									zhan_zhan["to"] = encodeURI(to_city);
                            //
                            //									getXML_data(zhan_zhan,"zhan_zhan");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }

    KX.sugg_init_skb_to=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_skb_to=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_skb_to=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;

                    window.clearInterval(shuru_skb_to);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_skb_to($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });

        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    fr_city = $("#t_from").val();
                    to_city = $("#t_to").val();

                    zhan_zhan["action"] = "segment";
                    zhan_zhan["method"] = "getsuggestinfobynamepair";
                    zhan_zhan["from"] = encodeURI(fr_city);
                    zhan_zhan["to"] = encodeURI(to_city);

                    getXML_data(zhan_zhan,"zhan_zhan");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_skb_to($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_skb_to=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_skb_to2){
                        clearTimeout(timeConter_skb_to2);
                    }
                    var timeConter_skb_to2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_skb_to").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){


                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_skb_to").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });


                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.next(".noRep_skb_to").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;

                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									fr_city = $("#t_from").val();
                            //									to_city = $("#t_to").val();
                            //
                            //									zhan_zhan["action"] = "segment";
                            //									zhan_zhan["method"] = "getsuggestinfobynamepair";
                            //									zhan_zhan["from"] = encodeURI(fr_city);
                            //									zhan_zhan["to"] = encodeURI(to_city);
                            //
                            //									getXML_data(zhan_zhan,"zhan_zhan");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }


    KX.sugg_init_checi=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_checi=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_checi=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    window.clearInterval(shuru_checi);
                    key_posi=1;
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    $("#"+ac_input_id).suggest_checi($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });
        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });

        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    checi = $("#t_code").val();

                    code["action"] = "train";
                    code["method"] = "getsuggestinfobycode";
                    code["code"] = encodeURI(checi);

                    getXML_data(code,"code");
                }
            }
        });

        function fn2(){
            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_checi($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_checi=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                inputs=$.trim(inputs);
                if(inputs==""){
                    if(timeConter_checi2){
                        window.clearTimeout(timeConter_checi2);
                    }
                    var timeConter_checi2=window.setTimeout(function(){
                        over=0;
                        $(".noRep_checi").hide();
                        element.hide();
                        i=0;
                        t=0;
                        tt="";
                        uu=";";
                    },80);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/traincode/index.php?callback=?","q="+inputs,
                    function(json){
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.checi){
                            $(".noRep_checi").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            $(".noRep_checi").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.checi)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.checi)
                            {
                                i++;
                                checi = key;
                                fromto=json.checi[key].fromto;
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^.*[a-zA-Z]"+inputs+"|^.*\/"+inputs+"","i");
                                var patt3=new RegExp(""+inputs+"$","i");
                                if(patt.test(checi)){
                                    u=0;
                                    checi=checi.replace(patt,"");
                                }
                                else if(patt2.test(checi)){
                                    var shengyu_arr=checi.match(patt2);
                                    var shengyu=shengyu_arr[0];
                                    var checi2=checi.replace(patt2,"");
                                    var pipei=shengyu.replace(patt3,"");
                                    u=1;
                                }
                                var keyword=inputs.toUpperCase();
                                if(u==0){
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\">"+"<div style=\"float:right\">"+fromto+"</div><div class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span>"+checi+"</div></div>");
                                }
                                else if(u==1){
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+fromto+"</div><div class=\"cityname\">"+pipei+"<span style=\"color:#ff6600\">"+keyword+"</span>"+checi2+"</div></div>");
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).unbind("click",fn3);
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });

                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                                ac_input.val(tt);
                            }
                            element.hide();
                            element.next(".noRep_checi").hide();
                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            k=0;
                            i=0;
                            t=0;
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									checi = $("#t_code").val();
                            //
                            //									code["action"] = "train";
                            //									code["method"] = "getsuggestinfobycode";
                            //									code["code"] = encodeURI(checi);
                            //
                            //									getXML_data(code,"code");
                            //								}
                        }

                        k=1;
                        new_num=i;

                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);

    }


    KX.sugg_init_station=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_station=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_station=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;

                    window.clearInterval(shuru_station);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_station($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });
        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    chezhan = $("#t_stationname").val();

                    station["action"] = "station";
                    station["method"] = "getsuggestinfobyname";
                    station["stationname"] = encodeURI(chezhan);

                    getXML_data(station,"station");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_station($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_station=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_station2){
                        clearTimeout(timeConter_station2);
                    }
                    var timeConter_station2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_station").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_station").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });


                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.next(".noRep_station").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;

                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									chezhan = $("#t_stationname").val();
                            //
                            //									station["action"] = "station";
                            //									station["method"] = "getsuggestinfobyname";
                            //									station["stationname"] = encodeURI(chezhan);
                            //
                            //									getXML_data(station,"station");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }

    KX.sugg_init_skb_fr_piao=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_skb_fr_piao=0;
            $("#ac_input_id").bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_skb_fr_piao=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $("#ac_input_id").bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;

                    window.clearInterval(shuru_skb_fr_piao);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_skb_fr_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });
        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    fr_city = $("#p_from").val();
                    to_city = $("#p_to").val();

                    zhan_zhan["action"] = "segment";
                    zhan_zhan["method"] = "getsuggestinfobynamepair";
                    zhan_zhan["from"] = encodeURI(fr_city);
                    zhan_zhan["to"] = encodeURI(to_city);

                    getXML_data(zhan_zhan,"zhan_zhan");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_skb_fr_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_skb_fr_piao=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_skb_fr_piao2){
                        clearTimeout(timeConter_skb_fr_piao2);
                    }
                    var timeConter_skb_fr_piao2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_skb_fr").hide();
                        element.children("iframe").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();
                            element.children("iframe").hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();
                            element.children("iframe").hide();

                            q=0;
                            k=0;
                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_skb_fr").show();
                            element.hide();
                            element.children("iframe").hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.children("iframe").height(element.find(".yui-ac-content").height());
                            element.children("iframe").width(element.width());
                            element.children("iframe").css("top","2px");
                            element.children("iframe").show();


                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });


                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.children("iframe").hide();
                            element.next(".noRep_skb_fr").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;
                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									fr_city = $("#p_from").val();
                            //									to_city = $("#p_to").val();
                            //
                            //									zhan_zhan["action"] = "segment";
                            //									zhan_zhan["method"] = "getsuggestinfobynamepair";
                            //									zhan_zhan["from"] = encodeURI(fr_city);
                            //									zhan_zhan["to"] = encodeURI(to_city);
                            //
                            //									getXML_data(zhan_zhan,"zhan_zhan");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }

    KX.sugg_init_skb_to_piao=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_skb_to_piao=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_skb_to_piao=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;

                    window.clearInterval(shuru_skb_to_piao);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_skb_to_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });
        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    fr_city = $("#p_from").val();
                    to_city = $("#p_to").val();

                    zhan_zhan["action"] = "segment";
                    zhan_zhan["method"] = "getsuggestinfobynamepair";
                    zhan_zhan["from"] = encodeURI(fr_city);
                    zhan_zhan["to"] = encodeURI(to_city);

                    getXML_data(zhan_zhan,"zhan_zhan");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_skb_to_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_skb_to_piao=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_skb_to_piao2){
                        clearTimeout(timeConter_skb_to_piao2);
                    }
                    var timeConter_skb_to_piao2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_skb_to").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_skb_to").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });


                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.next(".noRep_skb_to").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;

                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									fr_city = $("#p_from").val();
                            //									to_city = $("#p_to").val();
                            //
                            //									zhan_zhan["action"] = "segment";
                            //									zhan_zhan["method"] = "getsuggestinfobynamepair";
                            //									zhan_zhan["from"] = encodeURI(fr_city);
                            //									zhan_zhan["to"] = encodeURI(to_city);
                            //
                            //									getXML_data(zhan_zhan,"zhan_zhan");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }


    KX.sugg_init_checi_piao=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_checi_piao=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_checi_piao=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    window.clearInterval(shuru_checi_piao);
                    key_posi=1;
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    $("#"+ac_input_id).suggest_checi_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });
        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });
        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    checi = $("#p_code").val();

                    code["action"] = "train";
                    code["method"] = "getsuggestinfobycode";
                    code["code"] = encodeURI(checi);

                    getXML_data(code,"code");
                }
            }
        });

        function fn2(){
            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_checi_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_checi_piao=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                inputs=$.trim(inputs);
                if(inputs==""){
                    if(timeConter_checi_piao2){
                        window.clearTimeout(timeConter_checi_piao2);
                    }
                    var timeConter_checi_piao2=window.setTimeout(function(){
                        over=0;
                        $(".noRep_checi").hide();
                        element.hide();
                        i=0;
                        t=0;
                        tt="";
                        uu=";";
                    },80);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/traincode/index.php?callback=?","q="+inputs,
                    function(json){
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.checi){
                            $(".noRep_checi").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            $(".noRep_checi").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.checi)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.checi)
                            {
                                i++;
                                checi = key;
                                fromto=json.checi[key].fromto;
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^.*[a-zA-Z]"+inputs+"|^.*\/"+inputs+"","i");
                                var patt3=new RegExp(""+inputs+"$","i");
                                if(patt.test(checi)){
                                    u=0;
                                    checi=checi.replace(patt,"");
                                }
                                else if(patt2.test(checi)){
                                    var shengyu_arr=checi.match(patt2);
                                    var shengyu=shengyu_arr[0];
                                    var checi2=checi.replace(patt2,"");
                                    var pipei=shengyu.replace(patt3,"");
                                    u=1;
                                }
                                var keyword=inputs.toUpperCase();
                                if(u==0){
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\">"+"<div style=\"float:right\">"+fromto+"</div><div class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span>"+checi+"</div></div>");
                                }
                                else if(u==1){
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+fromto+"</div><div class=\"cityname\">"+pipei+"<span style=\"color:#ff6600\">"+keyword+"</span>"+checi2+"</div></div>");
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).unbind("click",fn3);
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });

                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                                ac_input.val(tt);
                            }
                            element.hide();
                            element.next(".noRep_checi").hide();
                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            k=0;
                            i=0;
                            t=0;
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									checi = $("#p_code").val();
                            //
                            //									code["action"] = "train";
                            //									code["method"] = "getsuggestinfobycode";
                            //									code["code"] = encodeURI(checi);
                            //
                            //									getXML_data(code,"code");
                            //								}
                        }

                        k=1;
                        new_num=i;

                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);

    }


    KX.sugg_init_station_piao=function(max_num,highlight,highlighth,ac_element_class,ac_input_id,ac_content_id,link)
    {
        var uu="",tt="",fs=0,key_posi=1;
        if(!$.browser.msie){
            $("#"+ac_input_id).unbind("input");
            $("#"+ac_input_id).bind("input",fn2,false);
        }

        if($.browser.msie){
            var shuru_station_piao=0;
            $(document).bind("keydown",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;
                    shuru_station_piao=window.setInterval(function(){key_posi=1;},100);
                }
            });
            $(document).bind("keyup",function(event){
                if(event.keyCode==8||event.keyCode==46||(event.keyCode>47&&event.keyCode<91)||event.keyCode==32||event.keyCode==13)
                {
                    key_posi=1;

                    window.clearInterval(shuru_station_piao);
                }
            });
            $("#"+ac_input_id).unbind('propertychange');
            $("#"+ac_input_id).bind('propertychange',function(o){
                if(uu!=$("#"+ac_input_id).val()&&key_posi==1&&fs==1){
                    q=0;
                    $("#"+ac_input_id).suggest_station_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
                }
            });

        }

        $("#"+ac_input_id).bind("keypress",function(event){
            key_posi=1;
            fs=1;
            event.keyCode=event.charCode?event.charCode:event.keyCode;
            if((event.keyCode>64&&event.keyCode<91)||(event.keyCode>96&&event.keyCode<123)){
                a=$("#"+ac_input_id).val()+String.fromCharCode(event.keyCode);
            }
        });
        $("#"+ac_input_id).bind("keyup",function(event){
            if(event.keyCode==13){
                //right news
                if(link==1){
                    chezhan = $("#p_station").val();

                    station["action"] = "station";
                    station["method"] = "getsuggestinfobyname";
                    station["stationname"] = encodeURI(chezhan);

                    getXML_data(station,"station");
                }
            }
        });

        function fn2(){
            q=0;

            c_value=$("#"+ac_input_id).val();
            $("#"+ac_input_id).suggest_station_piao($("#"+ac_input_id).val(),$("#"+ac_content_id),$("#"+ac_input_id));
        }

        $("#"+ac_input_id).unbind("focus");
        $("#"+ac_input_id).bind("focus",fn5);

        function fn5(event)
        {
            a=uu=tt=$("#"+ac_input_id).val();
            fs=1;
            this.select();
        }
        (function($){
            $.fn.suggest_station_piao=function(inputs,element,ac_input){
                //initialize
                if(b<=1){
                    b++;
                }
                over++;
                c_value=inputs;
                var key_o=0;
                var num=1;
                if(inputs==""){
                    if(timeConter_station_piao2){
                        clearTimeout(timeConter_station_piao2);
                    }
                    var timeConter_station_piao2=setTimeout(function(){
                        over=0;
                        element.hide();
                        element.next(".noRep_station").hide();
                        i=0;
                        q=0;
                        t=0;
                        tt="";
                        uu=";";
                    },100);
                    return;
                }

                ac_input.keydown(function(event){
                    if(event.keyCode==13){
                        if(b<=1&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                        if(b>1&&a==ac_input.val()&&t==1){
                            uu=tt;
                            ac_input.val(tt);
                            t=0;
                            element.hide();

                            q=0;
                            k=0;

                            a=ac_input.val();
                            return false;
                        }
                    }
                });
                ac_input.keyup(function(event){
                    a=ac_input.val();
                });
                if(over<=1){
                    $.getJSON("http://suggestion.www.kuxun.cn/train/index.php?callback=?","q="+encodeURI(inputs),
                    function(json){
                        inputs=$.trim(inputs);
                        var e_body=element.find(".yui-ac-body");
                        e_body.find(".ha").html("&nbsp;");
                        e_body.find(".lu").remove();
                        e_body.find(".ha").show();
                        x_key++;
                        key_o=x_key;
                        var key;
                        var in_key;
                        if(!json.citys){
                            element.next(".noRep_station").show();
                            element.hide();
                            t=0;
                            tt=uu=ac_input.val();
                        }
                        else{
                            t=1;
                            $(".noRep").hide();
                            i=0;
                            var ilength=0;
                            for (var ii in json.citys)
                            ilength++;
                            if(ilength>0){
                                element.show();
                                element.find(".yui-ac-head").html('输入中文/拼音或↑↓选择');
                            }
                            for(key in json.citys)
                            {
                                i++;
                                var city = json.citys[key];
                                var patt=new RegExp("^"+inputs+"","i");
                                var patt2=new RegExp("^"+city.pinyin+"","i");
                                var patt3=new RegExp("^"+city.name+"","i");
                                if(city.pinyin.match(patt)){
                                    var keyword=city.pinyin.match(patt,inputs);
                                    u=0;
                                    var pinyin=city.pinyin.replace(patt,"");
                                }
                                else if(inputs.match(patt2)){
                                    var keyword=city.pinyin;
                                    u=0;
                                    var pinyin="";
                                }
                                else if(city.name.match(patt)){
                                    var keyword=city.name.match(patt,inputs);
                                    u=1;
                                    var cityname=city.name.replace(patt,"");
                                }
                                else if(inputs.match(patt3)){
                                    var keyword=city.name;
                                    u=1;
                                    var cityname="";
                                }
                                {
                                    e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                    e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                    if(u==0){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<span class=\"cityname\">"+city.name+"</span>&nbsp;(<span style=\"color:#ff6600\">"+keyword+"</span>"+pinyin+")</div>");
                                    }
                                    if(u==1){
                                        e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\"><div style=\"float:right\">"+json.citys[key].chezhan+"</div>"+"<div style=\"display:inline\" class=\"cityname\"><span style=\"color:#ff6600\">"+keyword+"</span><span>"+cityname+"</span></div>&nbsp;("+city.pinyin+")</div>");
                                    }
                                }
                                /*else{
                                if(i==1){
                                i--;
                                e_body.find(".ha:eq("+(0)+")").before("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                if(i>1){
                                i--;
                                e_body.find(".ha:eq("+(i-1)+")").after("<div class=\"lu\"><div align=\"left\" style=\"float:left\"><span style=\"color:red\">&nbsp;"+keyword+"</span>"+pinyin+"</div><span>"+city.name+"</span></div>");
                                }
                                }*/

                                /*if(city.jichangs){
                                for(in_key in city.jichangs)
                                {
                                i++;
                                var in_value=city.jichangs[in_key];
                                e_body.find(".ha:eq("+(i-1)+")").attr("id",i);
                                e_body.find(".ha:eq("+(i-1)+")").attr("class","lh ha");
                                e_body.find(".ha:eq("+(i-1)+")").html("<div align=\"left\" style=\"float:left\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;邻近机场：</div><br /><div style=\"text-align:right;padding-right:0px;padding-top:2px;padding-bottom:2px\"><span class=\"cityname\">"+in_value.name+"</span>&nbsp;"+in_value.distance+"公里</div>");
                                }
                                }*/
                            }
                            element.find(".lh").slice(i).hide();
                            element.find("#1").addClass(highlighth);
                            tt=element.find(".cityname:eq(0)").text();
                            uu=";";
                            t=1;
                            q=1;
                        }
                        /*element.find("."+ac_element_class).each(function(){
                        $(this).bind("click",fn3);});*/
                        ac_input.unbind("blur");
                        ac_input.bind("blur",fn4);
                        element.find("."+ac_element_class).each(function(){
                            $(this).unbind("mousemove");
                            $(this).mousemove(function(){
                                $(this).addClass(highlight);
                                q=1;
                                uu=tt=$(this).find(".cityname").text();
                            });
                            $(this).unbind("mouseout");
                            $(this).mouseout(function(){
                                $(this).removeClass(highlight);
                            });
                        });


                        function fn4(event)
                        {
                            if(t==1){
                                uu=tt;
                            }
                            element.hide();
                            element.next(".noRep_station").hide();
                            q=0;
                            k=0;
                            i=0;
                            t=0;

                            if(tt!=""){
                                ac_input.val(tt);
                            }
                            uu=tt="";
                            fs=0;

                            //right news
                            //								if(link==1){
                            //									chezhan = $("#p_station").val();
                            //
                            //									station["action"] = "station";
                            //									station["method"] = "getsuggestinfobyname";
                            //									station["stationname"] = encodeURI(chezhan);
                            //
                            //									getXML_data(station,"station");
                            //								}
                        }

                        k=1;
                        new_num=i;
                        $(document).unbind("keydown");
                        $(document).bind("keydown",fn1);

                        //fn1:keyboard moves
                        function fn1(event)
                        {
                            if(event.keyCode==40&&num<new_num+2&&k==1&&x_key==key_o){
                                if(num==new_num+1){num=0;}
                                num++;
                                key_posi=0;
                                if(num==new_num+1){num=0;}
                            }

                            if(event.keyCode==38&&num>-1&&k==1&&x_key==key_o){
                                if(num==0){num=new_num+1;}
                                num--;
                                key_posi=0;
                                if(num==0){num=new_num+1;}
                            }
                            if((event.keyCode==38||event.keyCode==40)&&x_key==key_o){
                                element.find("."+ac_element_class).each(function(){$(this).removeClass(highlighth);});
                                t=0;
                            }
                            if((event.keyCode==38||event.keyCode==40)&&num!=0&&num!=new_num+1&&k==1&&x_key==key_o){
                                element.find("#"+num).addClass(highlighth);
                                uu=tt=element.find("#"+num).find(".cityname").text();
                                q=1;
                                t=1;
                            }


                            if((num==0||num==new_num+1)&&k==1&&x_key==key_o){
                                if(event.keyCode==38||event.keyCode==40){
                                    ac_input.val(c_value);
                                }
                                t=0;
                            }
                        }
                    });
                }
                over--;
            }
        })(jQuery);
    }
})(KX);