如果有人可以帮助我解决这个问题,我将不胜感激。
我希望在我的页面中添加一些 html/js,这样一旦客户将他们的国家/地区放入下拉菜单并单击提交,就会产生预计的交货日期。
如果有人可以帮助我解决这个问题,我将不胜感激。
我希望在我的页面中添加一些 html/js,这样一旦客户将他们的国家/地区放入下拉菜单并单击提交,就会产生预计的交货日期。
最好的方法是使用地图引擎(如 Google Maps API 或 Nokia Here)并计算距离。但这是非常复杂的,并且在大多数情况下都过大。
我做过一次国家代码列表,你可以用它来归档你想要的。只需使用 JSON 并向distance
其添加一个新选项。然后您只需将其添加到选择中:
$(function() {
var countrycodes=[
{"image":"ae.png","nameEN":"United Arab Emirates","code":"AE","distance":2},
{"image":"us.png","nameEN":"United States","code":"US","distance":1},
{"image":"vn.png","nameEN":"Viet Nam","code":"VN","distance":4},
{"image":"cn.png","nameEN":"China","code":"CN","distance":3}
];
$(countrycodes).each(function(i,value) {
$("#SendingCountry").append("<option value=" + value.distance + ">"+ value.nameEN +"</option");
});
$("#calculate").click(function() {
var result=$("#SendingCountry").val()*$("#SendingType").val();
$("#result").text("Your order will be shipped within "+result+" day.");
});
});
有关详细信息,请参阅此小提琴。
在国家/地区列表中,我将格式化
<select name="countries">
<option value='AA|3|1'>Somewhere</option>
<option value='AB|9|6'>Someplace</option>
</select>
然后在 JavaScript 中:
country = document.forms['f1'].elements['countries'].value;
prices = country.split('|');
prices[1] += 60 * 60 * 24;
prices[2] += 60 * 60 * 24;
today = new Date();
FreeShippingDate = today + prices[1];
ExpressShippingDate = today + price[2];
希望这可以帮助