Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript从外部PHP文件返回结果_Javascript_Php_Openstreetmap - Fatal编程技术网

Javascript从外部PHP文件返回结果

Javascript从外部PHP文件返回结果,javascript,php,openstreetmap,Javascript,Php,Openstreetmap,这可能真的很简单,但我的大脑正在衰退 我有一段Javascript代码,它将一个“addressPoints”变量设置为JSON格式的信息,例如(两个不同的位置,使用lat/lng) 。。。但是,我没有手动向这个变量提供信息,而是使用了一个名为“getMarkers.PHP”的PHP文件,该文件可以生成一个较长的信息列表,其格式与我希望使用的格式完全相同 我的问题是,如何将Javascript变量“addressPoints”的内容设置为从“getMarkers.php”文件返回的结果?尝试使用

这可能真的很简单,但我的大脑正在衰退

我有一段Javascript代码,它将一个“addressPoints”变量设置为JSON格式的信息,例如(两个不同的位置,使用lat/lng)

。。。但是,我没有手动向这个变量提供信息,而是使用了一个名为“getMarkers.PHP”的PHP文件,该文件可以生成一个较长的信息列表,其格式与我希望使用的格式完全相同

我的问题是,如何将Javascript变量“addressPoints”的内容设置为从“getMarkers.php”文件返回的结果?

尝试使用JQuery Ajax:)

这个应该是这样的

$.getJSON("www.example.com/getMarkers.php", function(result) {
   addressPoints = result;
});

您还可以创建一个标记,然后将PHP变量返回的内容存储在

标记中,并使用JS:)中的'whatever'id调用其值

在您的PHP中:

。$variable.”

在您的JS中:

var newVar=$('#随便什么').val;

或者类似的东西:)希望这有帮助

我目前已经使用以下代码解决了我的问题

$.ajax({
    url: 'getMarkers.php',
    dataType: 'json',
    async: false,
    success: function(data) {
        addressPoints = data;
    }
});

这让人觉得关闭异步有点像黑客,但它可以工作。。。这是最好的方法吗?

这似乎不起作用(显然已经删除了www.example.com),因为代码应该起作用,但可能是因为它是异步代码。也就是说,在AJAX调用完成之前,您可能正在使用
addressPoints
进行操作。有没有办法绕过异步问题?可以强制同步。。还是其他解决办法?
$.ajax({
    url: 'getMarkers.php',
    dataType: 'json',
    async: false,
    success: function(data) {
        addressPoints = data;
    }
});