Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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 HTML Ajax代码在某些部分工作,而在其他部分不工作_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript HTML Ajax代码在某些部分工作,而在其他部分不工作

Javascript HTML Ajax代码在某些部分工作,而在其他部分不工作,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,基本上我的HTML代码有问题。这是一个从数据库下载数据的Ajax请求,但它不起作用。下面有两个代码,一个适用于我的HTML脚本,另一个不适用,尽管它们基本相同。稍后我还将代码设置为显示变量(console.log(location)),但它的读数是未定义的。我知道它的php部分正在工作,因为我还做了另一个console.log(数据)来记录ajax调用的成功,并返回我在数据库中输入的数据。所以我想我要问的是发生了什么,我该如何修复它 *对不起,我一整天都在努力纠正拼写错误,现在我很累了:) 无效

基本上我的HTML代码有问题。这是一个从数据库下载数据的Ajax请求,但它不起作用。下面有两个代码,一个适用于我的HTML脚本,另一个不适用,尽管它们基本相同。稍后我还将代码设置为显示变量(console.log(location)),但它的读数是未定义的。我知道它的php部分正在工作,因为我还做了另一个console.log(数据)来记录ajax调用的成功,并返回我在数据库中输入的数据。所以我想我要问的是发生了什么,我该如何修复它

*对不起,我一整天都在努力纠正拼写错误,现在我很累了:)

无效的HTML代码:

var location;

function downloadCoords() {
    $.ajax({
        type: 'GET',
        url: 'transformerthing.php',
        dataType: "json",
        success: function(data) {
            console.log(data);
            location = data.location;
        },
        error: function(data) {
        console.log(data);
        }
    }); 
}   
工作正常的HTML代码:

var mapCode;
var used;
var active;


 function downloadCode() {
    $.ajax({
        type: 'GET',
        url: 'getMapCode.php',
        dataType: "json",
        success: function(data) {
            console.log(data);
            mapCode = data.mapCode;
            used = data.used;
            active = data.active;
        },
        error: function(data) {
        console.log(data);
        }
    }); 
}

再试一次

不起作用的HTML代码
以什么方式不起作用?错误?警告?VCR被重新编程了?看看这两个代码片段,我怀疑您对AJAX调用的异步性质没有真正的经验-这两个代码都不是异步代码的最佳实践请至少显示每个php文件和console.log(数据)的返回值。如果它说“undefined”,这意味着data.whates没有正确设置-这发生在php内部,而jquery/jsdoes
data
包含
位置
任何内容?您是否介意在此处发布
数据
?如果您将名称
位置
更改为
位置
,是否有效?我怀疑有一个名为
的全局位置
可能会与
窗口冲突。位置
-一个非常重要的“内置”Hi我刚刚尝试了这个,它有点奏效。它从数据库返回了正确的数据,但代码末尾的console.log仍然返回未定义的。。。我认为HTML处理脚本执行的方式是线性的,比如越低优先级越低,请阅读@Jaromanda X的注释,然后阅读本介绍
//shorthand deferred way

    $.getJSON( "transformerthing.php")
     .done(function(data){
        console.log(data);
   }).fail(function(msg){
       console.log(msg)
   });
//shorthand deferred way

    $.getJSON( "transformerthing.php")
     .done(function(data){
        console.log(data);
   }).fail(function(msg){
       console.log(msg)
   });