Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 向谷歌方向添加信息框_Javascript_Google Maps - Fatal编程技术网

Javascript 向谷歌方向添加信息框

Javascript 向谷歌方向添加信息框,javascript,google-maps,Javascript,Google Maps,我无法将可点击的信息框添加到我的谷歌地图方向 我可以让它在initialize函数中工作,但是当我通过xml文件添加额外的标记时,我需要让它工作。请参阅下面的完整代码 谢谢你的帮助 var directionDisplay; var directionsService = new google.maps.DirectionsService(); var stepDisplay; var map; var markersArray; var markers = []; var infowindow

我无法将可点击的信息框添加到我的谷歌地图方向

我可以让它在initialize函数中工作,但是当我通过xml文件添加额外的标记时,我需要让它工作。请参阅下面的完整代码

谢谢你的帮助

var directionDisplay;
var directionsService = new google.maps.DirectionsService();
var stepDisplay;
var map;
var markersArray;
var markers = [];
var infowindow;




function initialize() {
var latlng = new google.maps.LatLng( <? echo $lat; ?> , <? echo $lon; ?> );
var rendererOptions = {
    draggable: true
};
directionsDisplay = new google.maps.DirectionsRenderer(rendererOptions);
var myOptions = {
    zoom: 14,
    center: latlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
    mapTypeControl: false
};
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
directionsDisplay.setMap(map);
directionsDisplay.setPanel(document.getElementById("directionsPanel"));
}

//ADD LIST
google.maps.event.addListener(marker, 'click', function() {
infowindow.open(map,marker);
});




function calcRoute() {
var travelMode = 'DRIVING';
var start = $("#routeStart").val();
var via = $("#routeVia2").val();
var end = $("#routeVia").val();
var waypoints = [];
if (via != '') {
    waypoints.push({
        location: via,
        stopover: true
    });
}
var request = {
    origin: start,
    destination: end,
    waypoints: waypoints,
    unitSystem: google.maps.UnitSystem.IMPERIAL,
    travelMode: google.maps.DirectionsTravelMode[travelMode]
};


directionsService.route(request, function (response, status) {
    if (status == google.maps.DirectionsStatus.OK) {            
       directionsDisplay.setDirections(response);
        var myRoute = response.routes[0];
        var txtDir = '';
        for (var i = 0; i < myRoute.legs[0].steps.length; i++) {
            txtDir += myRoute.legs[0].steps[i].path + "";
        }
        var strLAT = "" + txtDir;
        //---------------------------------------------------------     
        //SEND DATA TO URL
        var DATET = $("#DATET").val();
        var TIMET = $("#TIMET").val();
        var xmlHttp = getXMLHttp();
        xmlHttp.onreadystatechange = function () {
            if (xmlHttp.readyState == 4) {
                HandleResponse(xmlHttp.responseText);
            }
        }
        xmlHttp.open("POST", 'MYPHPFILE', true);
        xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xmlHttp.send("LATLON=" + strLAT + "&getURL=" + end + "&TIMET=" + TIMET + "&DATET=" + DATET);
        //-------------------------------------------------------
        //RETURN DATA FOR PLACE MARKERS 
       var getURL = "MYXMLFILE" + end + ".xml";

       jQuery.get(getURL, function(data) {
       jQuery(data).find("marker").each(function() {
       var eachMarker = jQuery(this);
       var markerCoords = new google.maps.LatLng(
       parseFloat(eachMarker.find("Lat").text()),
       parseFloat(eachMarker.find("Lng").text())
       );
       var header  = eachMarker.find("title").text();
       var content = eachMarker.find("Content").text();
       var wxicon  = eachMarker.find("icon").text();
       //-------------------------------------------------------------------------- 
       //ADD INFO BOXES
       var contentString = "HELLO WORLD";
       var infowindow = new google.maps.InfoWindow({
       content: contentString,
       });         
       //--------------------------------------------------------------------------
        marker = new google.maps.Marker({
        position: markerCoords,
        icon: wxicon,
        map: map,
        animation: google.maps.Animation.DROP,
        title: header,
        });
        });
        });
        //--------------------------------------------------------------------------
    } else {
        //ERROR MESSAGES
        if (status == 'ZERO_RESULTS') {
            alert('No route could be found between the origin and destination.');
        } else if (status == 'INVALID_REQUEST') {
            alert('The DirectionsRequest provided was invalid.');
        } else {
            alert("There was an unknown error in your request. Requeststatus: nn" + status);
        }
    }
});
}
var方向显示;
var directionsService=new google.maps.directionsService();
var步进显示;
var映射;
var-markersArray;
var标记=[];
var信息窗口;
函数初始化(){
var latlng=新的google.maps.latlng(,);
var renderoptions={
德拉格布尔:是的
};
directionsDisplay=新建google.maps.DirectionsRenderer(渲染器选项);
变量myOptions={
缩放:14,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP,
mapTypeControl:false
};
map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
方向显示.setMap(地图);
directionsDisplay.setPanel(document.getElementById(“directionsPanel”);
}
//添加列表
google.maps.event.addListener(标记'click',函数(){
信息窗口。打开(地图、标记);
});
函数calcRoute(){
var travelMode=‘驾驶’;
var start=$(“#路由启动”).val();
var via=$(“#routeVia2”).val();
var end=$(“#routeVia”).val();
var航路点=[];
如果(通过!=''){
航路点推送({
地点:via,
中途停留:对
});
}
var请求={
来源:start,
目的地:完,
航路点:航路点,
unitSystem:google.maps.unitSystem.IMPERIAL,
travelMode:google.maps.DirectionsTravelMode[travelMode]
};
路由(请求、功能(响应、状态){
如果(status==google.maps.directionstatus.OK){
方向显示。设置方向(响应);
var myRoute=response.routes[0];
var txtDir='';
对于(var i=0;i
已修复,我将标记更改为此,请参见下文。答复

 //ADD INFO BOX
       var contentString = "HELLO WORLD";
       var infowindow = new google.maps.InfoWindow({
       content: htmls,
       });  
       //--------------------------------------------------------------------------
        marker = new google.maps.Marker({
        position: markerCoords,
        icon: wxicon,
        map: map,
        animation: google.maps.Animation.DROP,
        title: header,
        html: htmls,
        });
        var contentString = "HELLO WORLD";
        var infowindow = new google.maps.InfoWindow({
        content: htmls,
        }); 
        google.maps.event.addListener(marker, 'click', function () {
        infowindow.setContent(this.html);
        infowindow.open(map, this);
        });
        }); 
        });