繁体   English   中英

2个PHP变量中的最大值,如何从脚本传递到jQuery?

[英]Max of values in 2 PHP variables, how to pass from script to jQuery?

我想使用gmaps.js将地图标记添加到我网站上的地图上。 我正在使用PHP脚本从数据库中获取经度和纬度,但是我正在使用

while($dbrowinfo = mysqli_fetch_assoc($rowfields))

因此,信息在数据库查询运行后就结束了。 每页最多包含10组数据,均具有long和lat值(因此有20个独立变量)。

在脚本运行之前,是否可以使用PHP中的变量传递给jQuery? 由于jQuery是客户端,PHP是服务器端,因此我无法真正解决这个问题。

谢谢你的时间

如果您问是否有一种方法可以在运行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>

将值放入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代码中使用此数组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM