2011-08-19 57 views
1

我是編程新手,因此迄今爲止看到的示例太難以採用我的代碼。我有一張地圖,上面有一個文本框,顯示地圖的當前中心座標。中心座標是完美的,但由於某種原因,它們周圍有圓括號。在提交輸入字段的表單之前,我需要刪除這些括號。JS /正則表達式 - 刪除周圍的括號;中心標記(CloudMade Maps)

<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> 

感謝您的幫助,您可以給:)

回答

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

那會做的儘可能的括號去。雖然不能幫助你標記的東西。當我把你的網站放入jsfiddle時,我收到了一堆「403禁止狀態」錯誤。

基本上上面的代碼使用正則表達式match表達式。它是「一個或多個(+)非括號([^()] ^符號爲not)字符([]表示字符集)的匹配項」。

+0

非常好!我一直在用這種廢話拉我的頭髮!謝謝! :) – tylerl

+0

@tylerl不客氣:)高興我能夠幫助。 –