我想使用gmaps.js将地图标记添加到我网站上的地图上。我使用PHP脚本从我的数据库获取纬度和经度,但是我使用的是
while($dbrowinfo = mysqli_fetch_assoc($rowfields))因此,在运行数据库查询之后,信息就结束了。每页最多有10组数据,既有long值,也有LAT值(因此有20个单独的变量)。
在脚本运行之前,有没有办法使用PHP中的变量传递给jQuery?我不能真正理解它,因为jQuery是客户端,而PHP是服务器端……
耽误您时间,实在对不起
发布于 2015-12-11 05:05:07
如果您正在询问是否有办法在JQuery脚本运行之前将变量从PHP传递到JavaScript,答案肯定是肯定的。所有PHP都将在任何JavaScript之前运行,因此,您可以简单地将所需数据作为JavaScript变量输出,如下所示:
<html>
<?php
// Load the data into your PHP variables
$dataA = "some data";
$dataB = "some more data";
$dataC = 245; // numeric data
?>
<body>
<!-- now open a script tag -->
<script>
var jsVar1 = "<?= $dataA ?>";// If outputting string, you need to add quotes for js
var jsVar2 = "<?= $dataB ?>";
var jsVar3 = <?= $dataC ?>; // No quotes needed for a number
$(document).ready(function(){
console.log("data from php: " + jsVar1 + " " + jsVar2 + " " + jsVar3);
});
</script>
</body>
</html>发布于 2015-12-11 05:53:25
将这些值放入PHP数组中,然后使用json_encode将它们编码到Javascript数组中
$coords = array();
while ($row = mysqli_fetchassoc($rowfields)) {
$coords[] = array('lat' => $row['lat'], 'lng' => $row['lng']);
}
echo '<script>var coords = ' . json_encode($coords) . ';</script>';这定义了一个包含对象数组的Javascript变量coords,例如:
var coords = [
{ lat: 50.0, lng: 101.1 },
{ lat: -20.8, lng: 55.3 },
...
];然后,您可以在jQuery代码中使用此数组。
https://stackoverflow.com/questions/34211484
复制相似问题