我正在使用此代码来获取谷歌地图。
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map_canvas { height: 100% }
</style>
<script type="text/javascript"
src="http://maps.googleapis.com/maps/api/js?sensor=true">
</script>
<script type="text/javascript">
function initialize() {
var latlng = new google.maps.LatLng(52.000,17.1100);
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
var marker = new google.maps.Marker({
position: latlng,
map: map,
});
var infoWindow = new google.maps.InfoWindow({
position: latlng,
content: '<b>Theater Address:</b><br> <?php echo $row['address']; ?>'
});
infoWindow.open(map);
}
</script>
我正在使用这个html表单代码输入lat和lon,我有一个提交按钮。
<form method="post" autocomplete="off">
<p>
<b>lat</b> <label>:</label>
<input type="text" name="lat" id="lat" />
<b>lon</b> <label>:</label>
<input type="text" name="lon" id="lon" />
</p>
<input type="submit" value="Show location" />
</form>
地图还有其他一些lat和lon。但是当我在输入lat和lon后点击提交时我也应该更改它的lat和lon。我可以这样做吗能有人帮助我吗?
提前致谢.. :))
答案 0 :(得分:0)
我已经从初始化函数中添加了一些变量,使它们可用于单击按钮。我在您的提交按钮中添加了一个ID,其中包含jquery。这对我有用:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
#map_canvas { height: 400px; width: 500px }
</style>
</head>
<body>
<div id="map_canvas"></div>
<form method="post" autocomplete="off">
<p>
<b>lat</b> <label>:</label>
<input type="text" name="lat" id="lat" />
<b>lon</b> <label>:</label>
<input type="text" name="lon" id="lon" />
</p>
<input type="submit" value="Show location" id="submit"/>
</form>
<script src="jquery.min.js"></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=true"></script>
<script type="text/javascript">
var latlng = new google.maps.LatLng(52.000,17.1100);
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
function initialize() {
var marker = new google.maps.Marker({
position: latlng,
map: map,
});
var infoWindow = new google.maps.InfoWindow({
position: latlng,
content: '<b>Theater Address:</b>'
});
infoWindow.open(map);
}
initialize();
$("#submit").on("click", function(evt) {
evt.preventDefault();
var lat = $("input#lat").val();
var lon = $("input#lon").val();
latlng = new google.maps.LatLng(lat,lon)
map.setCenter(latlng)
})
</script>
</body>
答案 1 :(得分:0)
你可以通过多种方式实现这一目标。
我可以用以下方式建议你:
创建另一种显示地图的方法:
function re_create_map() {
var latlng = new google.maps.LatLng(document.getElementById("lat").value,document.getElementById("lon").value);
map.setCenter(latlng);
}
<input type="button" onclick="re_create_map()" value="Show location" />
注意*:由于我们不需要提交此表单,因此无需输入type =“submit”,我们只能在客户端实现此功能。
或者您可以尝试其他一些javascript技巧来实现相同的目标。
答案 2 :(得分:0)