Google Distance Matrix API错误与距离

时间:2019-04-05 12:41:36

标签: javascript google-distancematrix-api

我建立了一个有区域限制的注册表。只有4公里之内的人员可以注册该系统。

我设置了Google Distance Matrix API,并添加了以下代码进行计算。

//*********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;
                //alert(distance);
                console.log(distance);
                var fields = distance.split(' ');
                var name = fields[0];
                name = name.replace(",", ".");
                var street = fields[1];
                if (name < 4 && (street == "km" || street == "m" )) {
                    if (document.RegForm.address.value == "") {
                        //alert( "Please provide your address!" );
                        document.RegForm.address.focus();
                        return false;
                    }
                    else {
                        var address = document.RegForm.address.value;
                        localStorage.setItem("address", address);
                    }

可以,但是我有问题。例如,距离为4.5 klm的地址将其计算为4.5 klm。通过这种方式,限制有效,并且不允许用户注册。

现在我将图钉移到另一个国家,它计算出的距离为2.338 klm,并且允许用户注册(这当然是错误的)。

据我了解,问题出在符号“。”和“,”

我又如何限制Google自动填充表单显示一个城镇的结果?

没有州或国家。但是城镇。

0 个答案:

没有答案