javascript - 如何将ajax请求数据保存到不同的变量中

标签 javascript php ajax

我正在尝试将从 ajax 调用返回的数据存储到不同的变量中。

Ajax 调用

$.ajax({
  url: 'fetch_lat_lng.php',
  type: 'GET',
  dataType: "html",    
  success: function(data) {
    //called when successful

    //lat = php lat variable
    //lng = php lng variable 

    myvar = data;
    console.log(lng);

    $('#ajaxphp-results').html(data);
  }
});

fetch_lat_lng.php

$query = "SELECT * FROM users WHERE user_id = 636 ";
$result = query($query);
confirmQuery($result);


while($row=mysqli_fetch_array($result)){

    $lat = $row['lat'];
    $lng = $row['lng'];

}

echo $lat. " ". $lng;

我想将 php 变量 $lat 和 $lng 保存到 ajax 调用中的 javascript 变量中。这可能吗?

期待您的回答,谢谢!

亲切的问候,

最佳答案

将您的服务器端代码更新为以下内容

<?php
$query = "SELECT * FROM users WHERE user_id = 636 ";
$result = query($query);
confirmQuery($result);


while($row=mysqli_fetch_array($result)){

    $lat = $row['lat'];
    $lng = $row['lng'];

}
// Encode the output data
echo json_encode(array('latitude'=>$lat, 'longitude' => $lng));
?>

修改ajax调用代码如下

<script type="text/javascript">
$.ajax({
  url: 'fetch_lat_lng.php',
  type: 'POST',
  dataType: 'json',
  success: function(data) {
    //called when successful
    latitude = data.latitude;
    longitude = data.longitude;
  }
});
</script>

如果需要返回更多的经度和纬度,请根据您的要求更新输出结构。

示例:

 <?php
// Decode the output data
echo json_encode(
    array(
        0 =>
        array(
            'latitude'=>12, 'longitude' => 34
        ),
        1 =>
        array(
            'latitude'=>56, 'longitude' => 78
        ),
    )
);
?>

希望对您有所帮助。

关于javascript - 如何将ajax请求数据保存到不同的变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34414762/

相关文章:

javascript - Ajax提交表单有时有效,有时直接重定向到action-url

php - magento资源中的version和data_version有什么区别?

php - void 作为返回类型

PHP 将图像显示为 BLOB mysqli

javascript - 如何使用 ajax 在 jquery 数据表中显示附加标签?

javascript - 需要javascript函数允许逗号和空格

javascript - 添加了 Sentry 调试,将长字符串视为未定义

java - 使用 this 在 Node.js 中构建类

javascript - 如何使用ajax提交已经加载ajax的表单,而不重新加载当前页面?

php - 使用ajax使用codeigniter表单上传图像