2011-09-16 2 views
1

Subgurimでドラッグ可能なマーカーを作成し、最終変数をテキストボックスに読み込もうとしています。Subgurim MapsでDragEndイベント用のテキストボックスに座標を配置する際の問題

テキストボックスにコーズを置く部分を除いて、私はすべての作業を終えました。

分離コード:

protected void Page_Load(object sender, EventArgs e){ 
    if (SessionManager.User == null) { 
     string strscript = "<script language=javascript>window.top.close();</script>"; 
     if(!ClientScript.IsStartupScriptRegistered("clientScript")) { 
      ClientScript.RegisterStartupScript(Page.GetType(), "clientScript", strscript); 
     } 
    } 
    else { 
     if (!Page.IsPostBack) {     
      gmap.Height = 400; 
      gmap.Width = 590; 
      gmap.enableDragging = true; 
      gmap.Language = "pt"; 
      gmap.BackColor = Color.White; 
      gmap.enableDragging = true; 
      gmap.enableGoogleBar = true; 

      gmap.Language = "pt"; 
      gmap.BackColor = Color.White; 

      GControl nav = new GControl(GControl.preBuilt.LargeMapControl3D); 
      GControl maptypes = new GControl(GControl.preBuilt.MenuMapTypeControl, new GControlPosition(GControlPosition.position.Top_Right)); 
      GControl scale = new GControl(GControl.preBuilt.ScaleControl, new GControlPosition(GControlPosition.position.Bottom_Left)); 
      GControl overview = new GControl(GControl.preBuilt.GOverviewMapControl, new GControlPosition(GControlPosition.position.Bottom_Right)); 

      gmap.addControl(nav); 
      gmap.addControl(maptypes); 
      gmap.addControl(scale); 
      gmap.addControl(overview); 

      GLatLng pt=null; 
      int zoom = 16; 

      string lat = Request.QueryString["lat"]; 
      string lon = Request.QueryString["lon"]; 

      if (lon == null || lat == null) { 
       pt = new GLatLng(Helper.BASE_LAT, Helper.BASE_LON); 
       zoom = Helper.BASE_ZOOM; 
      } 
      else { 
       pt = new GLatLng(Convert.ToDouble(lat), Convert.ToDouble(lon)); 
      } 
      gmap.setCenter(pt,zoom); 

      GMarkerOptions mOpts = new GMarkerOptions(); 
      mOpts.draggable = true; 

      GMarker marker = new GMarker(pt,mOpts); 
      gmap.addGMarker(marker); 

      gmap.addListener(new GListener(marker.ID, GListener.Event.dragend, 
       string.Format(@" 
        function(overlay, point) 
        {{ 
         var ev = new serverEvent('myDragEnd', {0}); 
         ev.addArg({0}.getZoom()); 
         ev.addArg(this.getPoint()); 
         ev.send(); 
        }} 
        ", gmap.GMap_Id) 
       ) 
      ); 
     } 
    } 
} 

protected string gmap_ServerEvent(object s, GAjaxServerEventOtherArgs e) {  
    switch (e.eventName) { 
     case "myDragEnd": 
      string zoomLevel = e.eventArgs[0]; 
      GLatLng point = GAjaxServerEventArgs.latlngFromString(e.eventArgs[1]); 
      txtLat.Text = "Hello";//point.lat.ToString(); 
      txtLon.Text = "There";//point.lng.ToString(); 
     break; 
    } 
    return string.Empty;  
} 

基本的に私はドラッグ可能なマーカーを作成し、発生しません割り当てが行われ、最後の方法...によって処理され、それにイベントを、添付しています。テキストボックスはまだ空です。

答えて

0

あなたは、ヘッダー

function markerDrag(evt) 
       { 
        document.getElementById('mlat_').value = this.getPosition().lat(); 
        document.getElementById('mlng_').value = this.getPosition().lng(); 

       } 

google.maps.event.addListener(marker, 'dragend', markerDrag); 

その後、マーカーを追加するときmlat_とmlngが入力型テキスト

です
関連する問題