在HTML主体上编写JavaScript变量 谷歌地图JavaScript API v3示例:反向地理编码 var地理编码器; 变量var; geocoder=新的google.maps.geocoder(); var input=“41.021355,-96.020508”; var latlngStr=input.split(“,”,2); var lat=parseFloat(latlngStr[0]); var lng=parseFloat(latlngStr[1]); var latlng=新的google.maps.latlng(lat,lng); 地理编码({ “latLng”:latLng },功能(结果、状态){ if(status==google.maps.GeocoderStatus.OK){ 如果(结果[0]){ variablejs=results[0]。格式化的_地址;**//document.write(variablejs);不工作** * //window.location.href=”http://localhost/test2.php?ad=“+variablejs;正在工作* }否则{ 警报(“未发现结果”); } }否则{ 警报(“地理编码器因“+状态”而失败); } }); * * document.write(variablejs);**//写入未定义的变量(不工作)
节(//document.write(variablejs);不工作()不会写入变量“variablejs”,但当我使用该方法(//window.location.href=”时http://localhost/test2.php?ad=“+variablejs;Working),它将写入url并转发作为参数传递变量的页面。我要做的是在同一HTML的主体中打印该变量。在HTML主体上编写JavaScript变量 谷歌地图JavaScript API v3示例:反向地理编码 var地理编码器; 变量var; geocoder=新的google.maps.geocoder(); var input=“41.021355,-96.020508”; var latlngStr=input.split(“,”,2); var lat=parseFloat(latlngStr[0]); var lng=parseFloat(latlngStr[1]); var latlng=新的google.maps.latlng(lat,lng); 地理编码({ “latLng”:latLng },功能(结果、状态){ if(status==google.maps.GeocoderStatus.OK){ 如果(结果[0]){ variablejs=results[0]。格式化的_地址;**//document.write(variablejs);不工作** * //window.location.href=”http://localhost/test2.php?ad=“+variablejs;正在工作* }否则{ 警报(“未发现结果”); } }否则{ 警报(“地理编码器因“+状态”而失败); } }); * * document.write(variablejs);**//写入未定义的变量(不工作),javascript,html,Javascript,Html,节(//document.write(variablejs);不工作()不会写入变量“variablejs”,但当我使用该方法(//window.location.href=”时http://localhost/test2.php?ad=“+variablejs;Working),它将写入url并转发作为参数传递变量的页面。我要做的是在同一HTML的主体中打印该变量。 我尝试先初始化变量,然后写入主体,但看起来该部分无法像全局变量或类似的东西那样访问。请帮忙 加载文档后,您不能使用文档。写入时不
我尝试先初始化变量,然后写入主体,但看起来该部分无法像全局变量或类似的东西那样访问。请帮忙 加载文档后,您不能使用
文档。写入时不覆盖所有内容。您将需要操作DOM,例如document.body.innerText=variablejs代码>。但我推荐
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Google Maps JavaScript API v3 Example: Reverse Geocoding</title>
<link
href="https://developers.google.com/maps/documentation/javascript/examples/default.css"
rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var geocoder;
var variablejs;
geocoder = new google.maps.Geocoder();
var input = "41.021355,-96.020508";
var latlngStr = input.split(",", 2);
var lat = parseFloat(latlngStr[0]);
var lng = parseFloat(latlngStr[1]);
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({
'latLng': latlng
}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
variablejs = results[0].formatted_address; * * //document.write(variablejs); Not working**
*
//window.location.href = "http://localhost/test2.php?ad="+ variablejs; Working*
} else {
alert("No results found");
}
} else {
alert("Geocoder failed due to: " + status);
}
}); * * document.write(variablejs); * * //writes undefined variable (not working)
</script>
</head>
<body></body>
</html>
加载文档后,无法使用文档。写入时不覆盖所有内容。您将需要操作DOM,例如document.body.innerText=variablejs代码>。但我推荐
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Google Maps JavaScript API v3 Example: Reverse Geocoding</title>
<link
href="https://developers.google.com/maps/documentation/javascript/examples/default.css"
rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var geocoder;
var variablejs;
geocoder = new google.maps.Geocoder();
var input = "41.021355,-96.020508";
var latlngStr = input.split(",", 2);
var lat = parseFloat(latlngStr[0]);
var lng = parseFloat(latlngStr[1]);
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({
'latLng': latlng
}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
variablejs = results[0].formatted_address; * * //document.write(variablejs); Not working**
*
//window.location.href = "http://localhost/test2.php?ad="+ variablejs; Working*
} else {
alert("No results found");
}
} else {
alert("Geocoder failed due to: " + status);
}
}); * * document.write(variablejs); * * //writes undefined variable (not working)
</script>
</head>
<body></body>
</html>
您正在传递给geocoder.geocode()的回调函数中为variablejs赋值。这意味着您正试图在调用回调之前访问和写入它,因此您还不会看到任何值集
在这些情况下,使用Firebug或类似工具进行调试将有所帮助
此外,您不能使用docuemnt.write,在加载文档后,您需要执行一些DOM操作。您在传递给geocoder.geocode()的回调函数中为variablejs赋值。这意味着您正试图在调用回调之前访问和写入它,因此您还不会看到任何值集
在这些情况下,使用Firebug或类似工具进行调试将有所帮助
此外,您不能使用docuemnt.write,在加载文档后,您需要执行一些DOM操作。change var variablejs;至var variablejs=“”;您应该很好地理解为什么不在正文中添加如下内容:,并将document.write(something)更改为document.getElementById('output')。innerHTML=something;?改变var变量;至var variablejs=“”;您应该很好地理解为什么不在正文中添加如下内容:,并将document.write(something)更改为document.getElementById('output')。innerHTML=something;?你能告诉我,在OP的代码中使用document.write()
之前,会触发onload
事件的位置吗?没有,但我想geocoder.geocode(params,callback)使用XMLHttpRequest-通常比DOMready慢。哇。。。这也解释了为什么OP在最后一行出现“undefined variable”-错误。你能告诉我,在OP的代码中使用document.write()
之前触发onload
事件的位置吗?没有,但我想geocoder.geocode(params,callback)使用XMLHttpRequest-通常比DOMready.Wow慢。。。这也解释了为什么OP在最后一行得到“undefined variable”-错误。