【问题标题】:Redirect output from javascript to HTML将输出从 javascript 重定向到 HTML
【发布时间】:2014-04-16 13:59:07
【问题描述】:

我有一个 javascript 函数,可以计算“我的位置”与从数据库获取坐标的另一个位置之间的距离。现在,我使用 php 从数据库中提取数据并在 HTML 表中显示数据。我还使用 php 调用 javascript。该函数执行得很好,我得到了想要的结果。但是,我现在想将此函数的输出重定向到 HTML 表中。

这是我的代码:

<script>
var latLngA;
function getLocation(coordinates,call_number) {
    //alert("Entering with coordinates " + coordinates + " and call number " + call_number);
    navigator.geolocation.getCurrentPosition(
        function(position) {
            if(call_number == 0){
                latLngA = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);
            }   
            var latlong = coordinates.split(",");
            var latLngB = new google.maps.LatLng(parseFloat(latlong[0]), parseFloat(latlong[1]));
            var distance = google.maps.geometry.spherical.computeDistanceBetween(latLngA, latLngB);
            var table = document.getElementById('venue_list');
            var tbody = table.getElementsByTagName('tbody')[0];
            var rows = tbody.getElementsByTagName('tr');
            rows[i].getElementsByTagName('td')[2].innerHTML = distance/1000;
        },
        function() {
            alert("Geo-location not supported!");
        }
    );
}
</script>
<?php
$i = 0;
$result = mysqli_query($con,$query);
while($row = mysqli_fetch_array($result))
                    {
                        $name = $row['NAME'];
                        $img = $row['IMAGE_SRC'];
                        $addr = $row['ADDRESS'];
                        $location = $row['LOCATION'];
                        $coordinates = $row['COORDINATES'];

                        echo "<script type='text/javascript'>map_function('{$addr}','{$name}','{$img}','{$i}');</script>";
                    ?>
                        <tr>
                            <td>
                                    <img src="<?php echo $img.".jpg"?>" height="100" width="100">
                            </td>
                            <td>
                                    <?php echo $name?>
                            </td>
                            <td>
                                    <?php echo "<script type='text/javascript'>getLocation('{$coordinates}','{$i}');</script>";?>
                            </td>
                            <td style="display:none;">
                                    <?php echo $location?>
                            </td>
                        </tr>                       
                    <?php
                        $i=$i+1;
                    }
                ?>

venue_list 是显示数据的表的id。虽然函数执行得很好,但我无法获得相应表格行中的输出。等待解决方案。谢谢。

【问题讨论】:

    标签: javascript php html google-maps google-maps-api-3


    【解决方案1】:

    rows[i] 事情似乎不正确。 如果您无论如何都使用循环来创建它们,请尝试为 td 提供不同的 id。更容易访问它们。

    【讨论】:

      猜你喜欢
      • 2018-03-26
      • 1970-01-01
      • 2015-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-11
      • 2012-07-02
      • 1970-01-01
      相关资源
      最近更新 更多