// JavaScript Document /** 搜索封装类 * ------------------------------------------------------ * 内部属性 * ------------------------------------------------------ * @ param urls 搜索的链接地址 * ------------------------------------------------------ * 内部方法 * ------------------------------------------------------ * init() 初始化查询 * */ var map_app_url = "http://222.76.208.20/"; var key_note = "如:川菜、客家菜"; var name_note = "如:江头、中山路"; var _aroundSearchBar; function aroundSearch(keypn, aroundpn, content, page, refun, citycode){ this.searchScript = null; this.keypn = keypn; this.aroundpn = aroundpn; this.contpn = content; this.pagepn = page; this.url = ""; this.pageno = 1; this.pageSize = 10; this.flagCount = 1; this.aroundflag = false; this.longitude = ""; this.latitude = ""; this.name = ""; this.mapkey = ""; this.refun = refun; this.citycode = (citycode == null || citycode == "") ? "FJFZ":citycode; this.aroundpn.attachEvent("onkeyup", function(){_setMapAddress();}); _aroundSearchBar = this; } function _setMapAddress(){ var tempname = _aroundSearchBar.aroundpn.value.trim(); if (tempname == "" || tempname == name_note) { _aroundSearchBar.name = ""; _aroundSearchBar.longitude = ""; _aroundSearchBar.latitude = ""; _aroundSearchBar.aroundflag = false; _showIcon(false); return false; } if (tempname == _aroundSearchBar.mapkey || tempname.length < 2) return false; _aroundSearchBar.mapkey = tempname; _mapGetUrl(); } function _mapGetUrl(sUrls,pageno,flag){ if(_aroundSearchBar.searchScript == null){ _aroundSearchBar.searchScript = document.createElement("script"); _aroundSearchBar.searchScript.setAttribute("type","text/javascript"); _aroundSearchBar.searchScript.setAttribute("language","javascript"); document.body.appendChild(_aroundSearchBar.searchScript); } //如果是翻页查询 if(sUrls != null){ if (pageno == null || pageno == "") pageno = 1; _aroundSearchBar.searchScript.src = _aroundSearchBar.url + pageno; }else{ if(_aroundSearchBar.mapkey == "") return false; /* flag查询标志,这个参数可以不用,主要用途是告诉你当有多个同样的查询的时候, 可以传入这个参数来标志不同次的查询,这样数据返回后,可以在searchBack函数 中,根据标志的不同进行不同的处理 */ var flag = "mysearch" + _aroundSearchBar.flagCount; _aroundSearchBar.flagCount ++; //注意下面的参数"run"的值,是数据返回后运行的函数,keyword可以传入随意的文字,但一定要传 _aroundSearchBar.url = map_app_url + "/richmap4/com/msgserv?act=QUERYAROUND3" + "&keyword=辅助搜索" + "&citycode=" + _aroundSearchBar.citycode + "&pagesize=" + _aroundSearchBar.pageSize + "&querystring=" + _aroundSearchBar.mapkey + "&run=_aroundBack" + "&arg=" + flag + "&pageno="; _aroundSearchBar.url = _aroundSearchBar.url.encode(); //alert(_aroundSearchBar.url); _aroundSearchBar.searchScript.src = _aroundSearchBar.url + "1"; } return true; } function _aroundBack(Obj){ var con_flag = (Obj.pois.length > 0) ? true:false; if(!Obj)return false; if(!Obj.arg)return false; if(Obj.isError){ alert("查询出现错误"); return false; } var outStr = ""; var show_flag = false; for(var i=0;i" + Obj.pois[i]["name"].substring(0,13) + "" } _showIcon(con_flag); //document.getElementById("map_icon").style.display =""; if (Obj.pageCount > 10) { outStr += "
" mappage_pn.style.display = ""; creatPage("mappage_pn",10,_aroundSearchBar.url,Obj.arg,Obj.pageCount,"_mapGetUrl(",'',4,6); //outStr += "
" } else { mappage_pn.style.display = "none"; } _aroundSearchBar.contpn.innerHTML = outStr; //document.getElementById("all_Con").style.display = ""; } function _setPoi(x, y, name){ _aroundSearchBar.aroundpn.value = name; _aroundSearchBar.name = name; _aroundSearchBar.longitude = x; _aroundSearchBar.latitude = y; _showIcon(false); if (this.refun != null) { eval(this.refun + "(" + x + "," + y + ",'" + name + "')"); try{} catch(e) {alert(e)} } } function _showIcon(flag){ var value = (flag) ? "":"none"; var src = (flag) ? "images/map/map_con_up.gif":"images/map/map_con_down.gif"; getById("cont_icon").src = src; mapall_pn.style.display = value; } function _beginSearch(){ var keyvalue = _aroundSearchBar.keypn.value.trim(); var str = ""; if (keyvalue != "" && keyvalue != key_note) str += "&key=" + keyvalue.encode(); var aroundvalue = _aroundSearchBar.aroundpn.value.trim(); if (aroundvalue != "" && aroundvalue != name_note) { str += "&longitude=" + _aroundSearchBar.longitude + "&latitude=" + _aroundSearchBar.latitude + "&name=" + _aroundSearchBar.name.trim(); } location.href = ProjectPath + "around.jsp?a=a" + str; } function setHelpPoi(x, y, name){ _aroundSearchBar.contpn.innerHTML = "
" + name.substring(0,13) + "
" }