1

我是编程新手,所以到目前为止我看到的例子对于我的代码来说太难采用了。我有一张地图,上面有一个文本框,显示了地图的当前中心坐标。中心坐标被完美地获取,但由于某种原因,它们周围有括号。在提交输入字段的表单之前,我需要删除这些括号。

<div id="coordinates"></div>

<div id="map" style="width:750px;height:400px;">
<script type="text/javascript" src="http://tile.cloudmade.com/wml/latest/web-maps-lite.js"></script>

<script type="text/javascript">
var cloudmade = new CM.Tiles.CloudMade.Web({key: 'YOUR KEY HERE'});
var map = new CM.Map('map', cloudmade);

map.setCenter(new CM.LatLng(38.27269,-92.46094), 4);
var currentLatLng = map.getCenter;
var myMarkerLatLng = new CM.LatLng(38.27269,-92.46094);
var myMarker = new CM.Marker(myMarkerLatLng, {title: "Search a 12-mile radius around this marker..."});
map.addOverlay(myMarker);

CM.Event.addListener(map, 'dragend', function() {
document.getElementById("coordinates").innerHTML = "<input onclick='cleanString();' type='text' name='lat' value='" + map.getCenter().toString(6) + "' />";
});

CM.Event.addListener(map, 'moveend', function() {
document.getElementById("coordinates").innerHTML = "<input type='text' name='lat' value='" + map.getCenter().toString(6) + "' />";
});
</script>

谢谢你提供的所有帮助 :)

4

1 回答 1

1
map.getCenter().toString(6).match(/[^()]+/)

就括号而言,这就够了。虽然不能帮你做标记。当我将您的网站放在jsfiddle中时,我收到一堆“禁止 403 状态”错误。

基本上上面的代码使用了一个正则match表达式。它是“一个或多个 ( +) 非括号([^()]^ 符号是not)字符([]表示字符集)的匹配”。

于 2011-08-19T23:45:16.370 回答