Javascript函数何时执行?PHP变量不会改变传入的参数

When does Javascript function execute? php variables are not changing passed in arguments

本文关键字:改变 参数 变量 何时 函数 执行 PHP Javascript      更新时间:2023-09-26

我有一个从php获取参数的javascript函数

javascript函数在页面加载后执行

我设置了php变量的初始值

设置javascript函数

重新赋值PHP变量

和当我的javascript函数加载-它使用我的初始值,而不是他们最后分配的值。

$lat = 0;
$lon = 0;
  <script>
var map;
function initialize(lat,lon) {
  var mapOptions = {
    zoom: 8,
    center: new google.maps.LatLng(lat,lon)
  };
  map = new google.maps.Map(document.getElementById('map-canvas'),
      mapOptions);
}
google.maps.event.addDomListener(window, 'load', function () { initialize(<?php echo $lat ?>,<?php echo $lon ?>); });
    </script>

$lat = $newvallat;
$lon = $newval;

函数用参数0,0

调用

我可以稍后调用addDomListener吗?

Javascript是一种客户端语言。PHP是一种服务器端语言。您不能在同一脚本中使用Javascript在一次运行中将参数传递给PHP。对于您正在尝试做的事情,您希望AJAX调用PHP文件,其中包含正在触发的Javascript DOMListener。

回答你的问题,Javascript是"运行"的瞬间它被浏览器加载,而PHP是解析当它被服务器读取(因此,之前浏览器获取和解析输出)。

Echo将变量的当前值放入响应中。更改该变量不会对JavaScript产生任何影响,因为它会得到回显的内容。

JavaScript在页面呈现给浏览器后运行,使用服务器上构建的任何值。

您可以使用Ajax来获得您想要的效果。

你试过通过谷歌教程吗?https://developers.google.com/maps/articles/phpsqlajax_v3

在我提供的链接中,它将向您展示如何首先将标记保存到XML文档中,然后根据自己的喜好进行处理。如果你需要更多的指导,这里有更多的链接。我发现谷歌地图甚至有很好的文档和教程。