これは私のHTMLコードです:
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
function getCords(){
var x=document.forms["get_loc"]["loc"].value;
var y=x.replace(" ","+");
$.getJSON("http://maps.google.com/maps/geo?q=%22"+y+"%22&key=%22My_Google_API_Key%22&sensor=false&output=json",
function(data, textStatus){
//alert(data.Placemark[0].Point.coordinates[0]);
//document.getElementById("MyDiv").innerHTML=data.Placemark[0].Point.coordinates[0]
$("#lon").val(data.Placemark[0].Point.coordinates[1]);
$("#lat").val(data.Placemark[0].Point.coordinates[0]);
console.log(data);
});
return true;
}
</script>
</head>
<body>
<form name="get_loc" id="get_loc" action="get_loc.php" onsubmit="return getCords()" method="post">
Location: <input type="text" name="loc" id="loc"/></br>
<input type="hidden" name="lat" id="lat" value="0"/>
<input type="hidden" name="lon" id="lon" value="0"/>
<input type="submit" value="Submit" id="submit_button"/></br>
</form>
</body>
</html>
今、私がやろうとしているのは、この関数を使用して場所の座標を取得し、それをいくつかのデータベース アクションのために別の PHP ファイルに渡すことです。しかし、PHP ファイルに出力された値を取得しようとすると、緯度と経度の両方が 0 のままになります。
ここで何がうまくいかないのですか?
P:S : false を返し、アラートをチェックすると、正しい緯度が得られます。したがって、Google API のエラーではありません。