Javascript 谷歌地图没有加载

Javascript 谷歌地图没有加载,javascript,html,Javascript,Html,Google map在localhost上运行时未加载,但在直接从磁盘运行时工作正常。如何解决此问题?我想找到源和目标之间的距离和方向。html页面加载正确,但单击get route时没有发生任何事情 <DOCTYPE html> <head> <title></title> <style type="text/css"> body { font-family: Arial; font-s

Google map在localhost上运行时未加载,但在直接从磁盘运行时工作正常。如何解决此问题?我想找到源和目标之间的距离和方向。html页面加载正确,但单击get route时没有发生任何事情

<DOCTYPE html>
<head>
<title></title>
<style type="text/css">
    body
    {
        font-family: Arial;
        font-size: 10pt;
    }
</style>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js? sensor=false&libraries=places"></script>
<script type="text/javascript">
    var source, destination;
    var directionsDisplay;
    var directionsService = new google.maps.DirectionsService();
    google.maps.event.addDomListener(window, 'load', function () {
        new google.maps.places.SearchBox(document.getElementById('txtSource'));
        new google.maps.places.SearchBox(document.getElementById('txtDestination'));
        directionsDisplay = new google.maps.DirectionsRenderer({  'draggable': true });
    });

    function GetRoute() {
        var mumbai = new google.maps.LatLng(18.9750, 72.8258);
        var mapOptions = {
            zoom: 7,
            center: mumbai
        };
        map = new google.maps.Map(document.getElementById('dvMap'), mapOptions);
        directionsDisplay.setMap(map);
        directionsDisplay.setPanel(document.getElementById('dvPanel'));

        //DIRECTIONS AND ROUTE//
        source = document.getElementById("txtSource").value;
        destination = document.getElementById("txtDestination").value;

        var request = {
            origin: source,
            destination: destination,
            travelMode: google.maps.TravelMode.DRIVING
        };
        directionsService.route(request, function (response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                directionsDisplay.setDirections(response);
            }
        });

        //DISTANCE AND DURATION//
        var service = new google.maps.DistanceMatrixService();
        service.getDistanceMatrix({
            origins: [source],
            destinations: [destination],
            travelMode: google.maps.TravelMode.DRIVING,
            unitSystem: google.maps.UnitSystem.METRIC,
            avoidHighways: false,
            avoidTolls: false
        }, function (response, status) {
            if (status == google.maps.DistanceMatrixStatus.OK &&  response.rows[0].elements[0].status != "ZERO_RESULTS") {
                var distance = response.rows[0].elements[0].distance.text;
                var duration = response.rows[0].elements[0].duration.text;
                var dvDistance = document.getElementById("dvDistance");
                dvDistance.innerHTML = "";
                dvDistance.innerHTML += "Distance: " + distance + "<br />";
                dvDistance.innerHTML += "Duration:" + duration;

            } else {
                alert("Unable to find the distance via road.");
            }
        });
    }
</script>
</head>
<body>

<table border="0" cellpadding="0" cellspacing="3">
    <tr>
        <td colspan="2">
            Source:
            <input type="text" id="txtSource" value="Bandra, Mumbai, India" style="width: 200px" />
            &nbsp; Destination:
            <input type="text" id="txtDestination" value="Andheri, Mumbai, India" style="width: 200px" />
            <br />
            <input type="button" value="Get Route" onclick="GetRoute()" />
            <hr />
        </td>
    </tr>
    <tr>
        <td colspan="2">
            <div id="dvDistance">
            </div>
        </td>
    </tr>
    <tr>
        <td>
            <div id="dvMap" style="width: 500px; height: 500px">
            </div>
        </td>
        <td>
            <div id="dvPanel" style="width: 500px; height: 500px">
            </div>
        </td>
    </tr>
</table>
<br />
</body>
</html>



`

身体
{
字体系列:Arial;
字号:10pt;
}
var来源、目的地;
var方向显示;
var directionsService=new google.maps.directionsService();
google.maps.event.addDomListener(窗口'load',函数(){
新的google.maps.places.SearchBox(document.getElementById('txtSource');
新的google.maps.places.SearchBox(document.getElementById('txtDestination');
directionsDisplay=new google.maps.DirectionsRenderer({'Dragable':true});
});
函数GetRoute(){
var mumbai=new google.maps.LatLng(18.9750,72.8258);
变量映射选项={
缩放:7,
中心:孟买
};
map=new google.maps.map(document.getElementById('dvMap'),mapOptions);
方向显示.setMap(地图);
directionsDisplay.setPanel(document.getElementById('dvPanel');
//方向和路线//
source=document.getElementById(“txtSource”).value;
destination=document.getElementById(“txtDestination”).value;
var请求={
来源:来源:,
目的地:目的地,
travelMode:google.maps.travelMode.DRIVING
};
路由(请求、功能(响应、状态){
if(status==google.maps.directionstatus.OK){
方向显示。设置方向(响应);
}
});
//距离和持续时间//
var service=new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
来源:[来源],
目的地:[目的地],
travelMode:google.maps.travelMode.DRIVING,
unitSystem:google.maps.unitSystem.METRIC,
避免:错误,
避免收费:错误
},功能(响应、状态){
if(状态==google.maps.DistanceMatrixStatus.OK&&response.rows[0]。元素[0]。状态!=“零结果”){
var distance=response.rows[0]。元素[0]。distance.text;
var duration=response.rows[0]。元素[0]。duration.text;
var dvDistance=document.getElementById(“dvDistance”);
dvDistance.innerHTML=“”;
dvDistance.innerHTML+=“距离:”+Distance+“
”; dvDistance.innerHTML+=“持续时间:”+持续时间; }否则{ 警报(“无法通过道路找到距离”); } }); } 资料来源: 目的地:


`
问题:您必须在此处添加谷歌地图api密钥才能访问谷歌地图

解决方案::这是我的api密钥,请生成您自己的api密钥并替换为我的api密钥

见说明:


身体
{
字体系列:Arial;
字号:10pt;
}
var来源、目的地;
var方向显示;
var directionsService=new google.maps.directionsService();
google.maps.event.addDomListener(窗口'load',函数(){
新的google.maps.places.SearchBox(document.getElementById('txtSource');
新的google.maps.places.SearchBox(document.getElementById('txtDestination');
directionsDisplay=new google.maps.DirectionsRenderer({'Dragable':true});
});
函数GetRoute(){
var mumbai=new google.maps.LatLng(18.9750,72.8258);
变量映射选项={
缩放:7,
中心:孟买
};
map=new google.maps.map(document.getElementById('dvMap'),mapOptions);
方向显示.setMap(地图);
directionsDisplay.setPanel(document.getElementById('dvPanel');
//方向和路线//
source=document.getElementById(“txtSource”).value;
destination=document.getElementById(“txtDestination”).value;
var请求={
来源:来源:,
目的地:目的地,
travelMode:google.maps.travelMode.DRIVING
};
路由(请求、功能(响应、状态){
if(status==google.maps.directionstatus.OK){
方向显示。设置方向(响应);
}
});
//距离和持续时间//
var service=new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
来源:[来源],
目的地:[目的地],
travelMode:google.maps.travelMode.DRIVING,
unitSystem:google.maps.unitSystem.METRIC,
避免:错误,
避免收费:错误
},功能(响应、状态){
if(状态==google.maps.DistanceMatrixStatus.OK&&response.rows[0]。元素[0]。状态!=“零结果”){
var distance=response.rows[0]。元素[0]。distance.text;
var duration=response.rows[0]。元素[0]。duration.text;
var dvDistance=document.getElementById(“dvDistance”);
dvDistance.innerHTML=“”;
dvDistance.innerHTML+=“距离:”+Distance+“
”; dvDistance.innerHTML+=“持续时间:”
    <DOCTYPE html>
    <head>
    <title></title>
    <style type="text/css">
        body
        {
            font-family: Arial;
            font-size: 10pt;
        }
    </style>
    <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js? sensor=false&libraries=places"></script>
    <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBgeepqF19Lq0I2jhEWj88uafs55jmnFso&libraries=places&callback=GetRoute" async defer></script>

    <script type="text/javascript">
        var source, destination;
        var directionsDisplay;
        var directionsService = new google.maps.DirectionsService();
        google.maps.event.addDomListener(window, 'load', function () {
            new google.maps.places.SearchBox(document.getElementById('txtSource'));
            new google.maps.places.SearchBox(document.getElementById('txtDestination'));
            directionsDisplay = new google.maps.DirectionsRenderer({  'draggable': true });
        });

        function GetRoute() {
            var mumbai = new google.maps.LatLng(18.9750, 72.8258);
            var mapOptions = {
                zoom: 7,
                center: mumbai
            };
            map = new google.maps.Map(document.getElementById('dvMap'), mapOptions);
            directionsDisplay.setMap(map);
            directionsDisplay.setPanel(document.getElementById('dvPanel'));

            //DIRECTIONS AND ROUTE//
            source = document.getElementById("txtSource").value;
            destination = document.getElementById("txtDestination").value;

            var request = {
                origin: source,
                destination: destination,
                travelMode: google.maps.TravelMode.DRIVING
            };
            directionsService.route(request, function (response, status) {
                if (status == google.maps.DirectionsStatus.OK) {
                    directionsDisplay.setDirections(response);
                }
            });

            //DISTANCE AND DURATION//
            var service = new google.maps.DistanceMatrixService();
            service.getDistanceMatrix({
                origins: [source],
                destinations: [destination],
                travelMode: google.maps.TravelMode.DRIVING,
                unitSystem: google.maps.UnitSystem.METRIC,
                avoidHighways: false,
                avoidTolls: false
            }, function (response, status) {
                if (status == google.maps.DistanceMatrixStatus.OK &&  response.rows[0].elements[0].status != "ZERO_RESULTS") {
                    var distance = response.rows[0].elements[0].distance.text;
                    var duration = response.rows[0].elements[0].duration.text;
                    var dvDistance = document.getElementById("dvDistance");
                    dvDistance.innerHTML = "";
                    dvDistance.innerHTML += "Distance: " + distance + "<br />";
                    dvDistance.innerHTML += "Duration:" + duration;

                } else {
                    alert("Unable to find the distance via road.");
                }
            });
        }
    </script>
    </head>
    <body>

    <table border="0" cellpadding="0" cellspacing="3">
        <tr>
            <td colspan="2">
                Source:
                <input type="text" id="txtSource" value="Bandra, Mumbai, India" style="width: 200px" />
                &nbsp; Destination:
                <input type="text" id="txtDestination" value="Andheri, Mumbai, India" style="width: 200px" />
                <br />
                <input type="button" value="Get Route" onclick="GetRoute()" />
                <hr />
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <div id="dvDistance">
                </div>
            </td>
        </tr>
        <tr>
            <td>
                <div id="dvMap" style="width: 500px; height: 500px">
                </div>
            </td>
            <td>
                <div id="dvPanel" style="width: 500px; height: 500px">
                </div>
            </td>
        </tr>
    </table>
    <br />
    </body>
    </html>