Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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 在jQuery中解析jSON响应_Javascript_Jquery_Json - Fatal编程技术网

Javascript 在jQuery中解析jSON响应

Javascript 在jQuery中解析jSON响应,javascript,jquery,json,Javascript,Jquery,Json,我正在为我的一个站点使用一个文件上传插件,“Delete”选项的回调函数返回一个jSON响应,如下所示: {"5425ba85c976a~2014-09-26_7-13-47.png":true} 我如何在jQuery中解析这个jSON响应,以知道该值是真是假 这是我的代码看起来的样子,但当我记录这个时,它会打印未定义的内容 $(document).on('click', '.delete', function(e) { var fileName = $(this).attr('fi

我正在为我的一个站点使用一个文件上传插件,“Delete”选项的回调函数返回一个jSON响应,如下所示:

{"5425ba85c976a~2014-09-26_7-13-47.png":true}
我如何在jQuery中解析这个jSON响应,以知道该值是真是假

这是我的代码看起来的样子,但当我记录这个时,它会打印未定义的内容

$(document).on('click', '.delete', function(e) {

    var fileName = $(this).attr('filename');
    $.ajax({
        url: "server/php/?action=DELETE&file="+fileName,
        type: 'GET',
        error: function (err) {
            alert(err.statusText);
        },
        success: function (data) {

            console.log(data.fileName);

        }
    });
});
你必须这样做

data["5425ba85c976a~2014-09-26_7-13-47.png"]
而不是

console.log(data.fileName);

你能告诉我们html元素的样子吗?将推荐此btw的数据属性。您需要
object.keys()
:。要将您的案例与副本进行比较:就像示例错误地执行
something.foo
,但确实需要名为“
bar
(存储在
foo
中)的属性一样,您错误地执行了
data.fileName
,当您确实需要名为“
542…47.png
”的属性时,该属性存储在
fileName
中。括号符号是您的朋友:示例解决方案是
something[foo]
,您的是
data[fileName]
@apsillers shouldnt
console.log(data[fileName])工作?退换商品undefined@SBB是的,应该是这样。我假设
fileName
的值与响应中的属性名称相同;不是吗?另外,为了确定,您是否正在检查
success
函数中的值?这将是获取数组值的方法,而不是json属性。@Razah:)@Razah如果您试图使用变量的值,则必须使用[]。如果使用
data.fileName
,它将在名为“fileName”的对象上查找属性。使用括号表示法将查找变量
fileName
的值的对象上的值。是的,您完全正确,我应该在注释之前仔细考虑;)因为图像名称是动态的,所以我做了
console.log(data[fileName])但它返回未定义