我已尽我所能使用以下脚本,但我终究无法弄清楚为什么未将页面 ID 发送到 PHP 脚本。
目前,我正在使用 PHP _GET 命令获取“index.php?id=12”,然后将其插入到 Javascript 变量中。我设置了一个包含它的第二个变量,以及一个用于纬度和经度的字符串。当我测试该字符串是通过警报创建的时,该字符串看起来完全像它应该的那样。
在我的 PHP 脚本中,我只获取经度和纬度数据,但从不获取 ID 数据。在这里阅读了许多其他线程后,我相信 Ajax 需要一个对象并且该字符串是意外的。不幸的是,我不知道如何纠正这个问题。
我的Javascript如下:
function GeoSuccess(position) {
var id = <?php echo $id ?>;
var dataString = '?id='+id+'&action=geolocation&latitude='+position.coords.latitude+'&longitude='+position.coords.longitude;
$.ajax({
url: 'search.php',
type: 'GET',
data: dataString,
success: function (msg) {
$('div#search-results').html(msg);
},
error: function (XMLHttpRequest, textStatus, errorThrown)
{
alert('Error submitting request.');
}
});
}
最佳答案
使用
'id='+id+....
代替
'?id='+id+....
关于php - Ajax 不向 PHP 发送 javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9564231/