1

当移动地图中的拖动按钮在其他页面表单中更改值时,在页面中打开表单并在 colorbox 中打开谷歌地图从其他页面加载

表单页面:form.php

    <form action="ajax-trades/submit-edit.php"  method="POST">
<div id="address"></div>
                <input type="hidden" name="target" id="target" value="<?php echo $row['gmap']; ?>">
<input type="submit" onclick="window.scrollTo(0, 200);" value="submit" class="button"  />

</form>

这是用于在其他页面中加载 Google 地图的 jquery:

    <script type="text/javascript">
$(function(){
function objToString (obj) {
            var str = '';
            for (var p in obj) {
                if (obj.hasOwnProperty(p)) {
                    str += obj[p] + ',' ;
                }
            }
            return str;
}
$("#test").gmap3({
  marker:{
    latLng: [35.712926551232044, 51.40896647885131,],
    options:{
      draggable:true
    },
    events:{
      dragend: function(marker){
        var position = (marker.getPosition());
        //$("#map").html(position[2]);
        //var stingposition = objToString (position);
        $("#address").html('<input type="hidden" name="map" value="' + position.toString() + '" />');

        $(this).gmap3({
          getaddress:{
            latLng:marker.getPosition(),
            callback:function(results){
              var map = $(this).gmap3("get"),
                infowindow = $(this).gmap3({get:"infowindow"}),
                content = results && results[1] ? results && results[1].formatted_address : "no address";
              if (infowindow){
                infowindow.open(map, marker);
                infowindow.setContent(content);
              } else {
                $(this).gmap3({
                  infowindow:{
                    anchor:marker,
                    options:{content: content}
                  }
                });
              }
            }
          }
        });
      }    
    }
  },
  map:{
    options:{
      zoom: 14
    }
  }
});
});
</script> 

只是这条线对工作很重要,但不工作!

        $("#address").html('<input type="hidden" name="map" value="' + position.toString() + '" />');
4

1 回答 1

0

尝试使用这个:

$("#address", window.top.document).html('<input type="hidden" name="map" value="' + position.toString() + '" />');

window.top意味着您将在“根”页面上搜索#address元素。

于 2013-04-23T16:19:52.397 回答