尝试将其添加到您的 js 函数中:
var outputvar = document.getElementById("your_div_id_inside_html_form");
outputvar.innerHTML='<input id=id_to_send_to_php value='+your_js_var+'>';
稍后在 html 中:
<div id="id_you_choosed_for_outputvar"></div>
此 div 将包含要通过表单传递到另一个 js 函数或 php 的 js var,请记住将其放置在您的 html 表单中!。这个解决方案对我来说很好。
在您的特定地理位置情况下,您可以尝试将以下内容添加到函数 showPosition(position):
var outputlon = document.getElementById("lon1");
outputlon.innerHTML = '<input id=lon value='+lon+'>';
var outputlat = document.getElementById("lat1");
outputlat.innerHTML = '<input id=lat value='+lat+'>';
稍后将这些 div 添加到您的 html 表单中:
<div id=lat1></div>
<div id=lon1></div>
在这些 div 中,您将获得纬度和经度作为 php 表单的输入值,您最好使用 css 隐藏它们(如果使用,只显示地图上的标记),以避免用户在提交之前更改它们,并设置您的数据库接受长度为 10,7 的浮点值。
希望这会有所帮助。