使用Google地图等使用距离计算器脚本检索距离...
然后根据该距离计算票价,但该脚本的输出会从Google动态显示为距离字段中的x,y英里
使用document.getElementById("distance_road").value = distance1;
和distance1 = response.routes[0].legs[0].distance.text;
在“成本”字段中,接受并以此格式输入数据(00.00),因此在尝试运行计算时输出结果为$NAN
。
以下是费用脚本:
function calculatefare() { /* variable declarations*/
var subTotal=0.00;
var pricePerFifthMile=0.54;
var dropOffCharge=2.60;
var overTwoPassengerCharge=0.50;
var tripMilage=Number(document.getElementById("distance_road").value);
var passengers=Number(document.getElementById("passengers").value);
/* if there are over 2 riders, each additional passenger pays $2 if (passengers>2)*/ { subTotal=overTwoPassengerCharge*(passengers-3+1); }
/* calculate the price based on miles in*/
subTotal+=parseInt(tripMilage*5)*pricePerFifthMile; subTotal+=dropOffCharge; /* prints the price to the div. toFixed adds cents to integer calculations */
document.getElementById('price').innerHTML=" $"+subTotal.toFixed(2);
}
// JavaScript Document
有没有办法让这个脚本接受那种格式(读它)(xx,x miles)
或者说要将此输出清除为xx.x,这意味着删除','和'里程'。
我试过了:
sanitizedDistance = parseFloat(distance1.replace(",","."));
答案 0 :(得分:2)
简单地将英里和逗号替换链接起来就像这样
sanitizedDistance = parseFloat(distance1.replace("miles","").replace(",","."))
答案 1 :(得分:1)
修复是在获得outputed并在表单中调用之前重新定义变量distance1。因此将解析输出以定义所需的输出格式。而这只有通过定义相同的函数distance1而不是添加另一个函数才有可能。
var distance1 = parseFloat(distance1.replace(",","."));