问题与PHP表单提交与谷歌地图地理编码Lat长
Issues with PHP form submit with Google Maps Geocoded Lat Long
我有一个html表单,其中包括以下代码:
<input type="text" style="opacity:0;" id="latlong" name="latlong" value="" />
<input type="submit" name="submit1" onClick="return validate();" value="Submit"/>
Javascript的验证函数如下所示。
<script type="text/javascript">
function validate()
{
if($("#near_buil_id").val()==''){
var address = "'""+$("#nearest_building").val()+","+$("#flat").val()+","+$("#near_road").val()+","+$("#landmark").val()+","+$("#street").val()+","+$("#region").val()+","+$("#city").val()+","+$("#state").val()+"'"";
geocoder.geocode({ 'address': address }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
$("#latlong").val("POINT("+results[0].geometry.location.k+" "+results[0].geometry.location.A+")");
//console.log($("#latlong").val());
return true;
}
else{
console.log(status);
console.log(results);
return false;
}
});
}else{
return false;
}
return true;
}
</script>
我的问题是,当我提交这个表单,并试图采取$_POST['latlong']
的值,得到一个空值。同样,当我把return false
放在函数的末尾,console.log
是我附加在$("#latlong")
中的值,我得到了期望值。
在您的submit
按钮html中,您应该将onclick
的代码移动到onsubmit
。onsubmit
在表单提交之前运行,而onclick
不是,所以本质上你是在"提交"表单,在latlong
输入中有一个空值,在你的javascript代码在latlong
输入中放一个值之前。
onsubmit
应该是一个表单属性
相关文章:
- 将地理编码结果转换为php变量以发布到mysql数据库
- JavaScript函数未返回谷歌地图lat/long的值
- Possibile使用Manifest v2下的HTML5地理位置API将lat/long转换为国家/地区
- Json在完整日历中对数据进行了编码
- 如何在文本搜索后返回long/lat
- 如何对每个用户每天只允许单击一次的按钮进行编码
- Javascript字符集编码
- 如何在javascript转换编码中将一个动态值从一个表单添加到另一个页面
- base64编码的图像比intranet中的常规图像好吗
- 我不知道我的编码有什么问题.(JavaScript)
- 为什么字符编码对URL很重要
- 如何在做PHP时在base64中动态编码;preg_ replace”;
- 如何将JSON编码的PHP数组发送到同一页面上的数据表
- 如何使Jquery编码的动态下拉菜单与PHP GET变量协调工作
- JavaScript代码,用于在浏览器中显示字节数组中的PDF文件(非base64编码)
- 以HTML文件中的编码形式脱机存储图像
- 获取给定lat-long的javascript中的当前日期和时间
- 如何使用谷歌地图地理编码而不是lon和lat的地址
- 问题与PHP表单提交与谷歌地图地理编码Lat长
- 地理编码输出是相同lat/lng的3倍