使用jQuery从此JSON字符串中获取值

时间:2021-02-20 23:27:58

Seems like this should be easy!

看起来这应该很容易!

I am submitting a form via jQuery/ajax and the success output is a JSON sting like this:

我通过jQuery / ajax提交表单,成功输出是这样的JSON sting:

{"activities-tracker-steps":[{"dateTime":"2016-09-06","value":"0"}]}

All I want to do is get the value (in this case 0). So, I try this:

我想做的就是获取值(在本例中为0)。所以,我试试这个:

        submitHandler: function() {
        var postData = $("#form").serializeArray();
        var formURL = $("#form").attr("action");
        $.ajax({
            url : formURL,
            type: "POST",
            data : postData,
            success : function(data) {
                var json;
                json = $.parseJSON(data);
                alert(json['value']);
                $('#form').trigger("reset");            
                $("#success").show().fadeOut(3000);
            },
            error : function() {
                $("#fail").show().fadeOut(3000);
            }
        });
    }   

Undefined, apparently. What am I doing wrong!?

显然是未定义的。我究竟做错了什么!?

Many thanks for your thoughts,

非常感谢你的想法,

1 个解决方案

#1


1  

As per provided structure you can fetch value by json['activities-tracker-steps'][0].value as mentioned below.

根据提供的结构,您可以通过json ['activities-tracker-steps'] [0] .value获取值,如下所述。

submitHandler: function() {
        var postData = $("#form").serializeArray();
        var formURL = $("#form").attr("action");
        $.ajax({
            url : formURL,
            type: "POST",
            data : postData,
            success : function(data) {
                var json;
                json = $.parseJSON(data);
                alert(json['activities-tracker-steps'][0].value);
                $('#form').trigger("reset");            
                $("#success").show().fadeOut(3000);
            },
            error : function() {
                $("#fail").show().fadeOut(3000);
            }
        });
    }   

#1


1  

As per provided structure you can fetch value by json['activities-tracker-steps'][0].value as mentioned below.

根据提供的结构,您可以通过json ['activities-tracker-steps'] [0] .value获取值,如下所述。

submitHandler: function() {
        var postData = $("#form").serializeArray();
        var formURL = $("#form").attr("action");
        $.ajax({
            url : formURL,
            type: "POST",
            data : postData,
            success : function(data) {
                var json;
                json = $.parseJSON(data);
                alert(json['activities-tracker-steps'][0].value);
                $('#form').trigger("reset");            
                $("#success").show().fadeOut(3000);
            },
            error : function() {
                $("#fail").show().fadeOut(3000);
            }
        });
    }