Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图Api don';t载荷_Javascript_Php_Jquery - Fatal编程技术网

Javascript 谷歌地图Api don';t载荷

Javascript 谷歌地图Api don';t载荷,javascript,php,jquery,Javascript,Php,Jquery,我有home.php,在标签头加载jquery另一个页面corpo_home.php: <script type="text/javascript"> function Loadcorpo(P1){ $("#corpo").load("corpo_home.php?sq="+elecodice[P1]+"&an="+eleanno[P1]); } </script> 加载page index.php时,我会看到“before”警报

我有home.php,在标签头加载jquery另一个页面corpo_home.php:

<script type="text/javascript">
    function Loadcorpo(P1){
        $("#corpo").load("corpo_home.php?sq="+elecodice[P1]+"&an="+eleanno[P1]);
    }
</script>
加载page index.php时,我会看到“before”警报,但不会看到“after”


你能帮我吗?

我发现了许多语法错误:

  • 拆分后,没有
  • 由于某种原因,您使用
    }关闭了函数仅需要
    }
  • 标记
    变量在
    标题之后立即关闭:
    }所以后面的花括号不应该在那里
  • 除此之外,我不明白为什么它不起作用。请显示调用的位置
    initialize()

    现在,请使用以下代码:

    <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=>123456&sensor=false"></script>
    <script type="text/javascript">
    function initialize(lat, lng){ // edited on first edit
        alert("before");
    
        var LatLng = { // edited on first edit
            lat: lat,
            lng: lng
        };
    
        alert("after");
    
        var mapOptions = {
            center: latlng,
            zoom: 17,
            mapTypeId: google.maps.MapTypeId.HYBRID
        };
    
        var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);    
    
        var marker = new google.maps.Marker({
            position: latlng,
            map: map, 
            title: ""
        });
    }
    </script>
    

    如果出于任何原因,这不起作用,也许可以用单引号将参数包装成字符串,但我不相信这一点。我知道,
    explode()
    返回字符串,但它们仅是HTML和PHP的字符串,JavaScript将把它们作为整数,因为它们不会用单引号包装。我希望这能有所帮助。

    谢谢您的语法更正

    我用以下方式调用Innizalize():

    <img onload="javascript:initialize('<?php echo $row_record['pzcoordi'];?>');"  src="images/blank.gif" />
    
    
    
    home.php有按钮previous和next,单击corpo_home.php reload,从数据库读取坐标并显示地图


    如果单击“下一步”按钮,然后正确返回地图加载,则第一次地图不会加载。

    检查开发人员控制台。您在哪里调用
    初始化
    函数?@Roberta请不要回答您自己的问题,对这样的答案进行评论。我不能对你的问题发表评论,因为我还没有足够的声誉。我试着用div代替img,但从未奏效。关于整数你是对的,但是第二次加载固定坐标的地图…我做了一个小的环境测试来简化网页。然后,我将map放入第一个程序(home.php),也是第一次(或按F5刷新时)工作。这个问题被放在jquery调用的程序corpo_home.php中。为什么?Grrhumm的问题只在Chrome和Explorer上,Firefox上可以。@Roberta让我解释一下(如果你喜欢意大利语,请告诉我,我是意大利人阿根廷人)。JavaScript中的
    map
    变量将为具有
    id
    map\u画布的任何元素提供映射选项。你需要做的唯一一件事就是创建一个带有
    id的
    标记,然后你可以为CSS添加一个
    类,并在JavaScript中添加
    google.maps.event.addDomListener(窗口“加载”,初始化)在函数之后。顺便说一下,根本不需要在另一个文件中使用密钥和函数
    
    <img onload="javascript:initialize('<?php echo $row_record['pzcoordi'];?>');"  src="images/blank.gif"/>
    
    <?php
        $array = explode(",", $row_record['pzcoordi']);
        $lat = $array[0];
        $lng = $array[1];
    ?>
    <img onload="initialize(<?php echo $lat; ?>, <?php echo $lng; ?>)"  src="images/blank.gif"/>
    
    <img onload="javascript:initialize('<?php echo $row_record['pzcoordi'];?>');"  src="images/blank.gif" />