如何从AJAX中的responseText获取特定值

时间:2014-04-01 03:07:48

标签: php jquery ajax codeigniter

我是PHP的新手。我目前正在研究AJAX,我希望我的文件能像这样回复:

{'success':true,'id':234,'name':'X-ghfhg','type':'campaign','value':'fghfgh'}

这是在responseText中。我想使用该响应的id。我尝试了JSON.Parse方法,但它无效。

这是我的AJAX:

$('#ButtonAddHeader').click(function(){
//  addEmailHeader();
        var HeaderName = $('#HeaderName').val();
        var EmailType = $('#emailType').val();
        var HeaderValue = $('#HeaderValue').val();

        if(HeaderName == "X-" || HeaderValue == "" )
            {
            $('#addHeaderMessage').text("Please fill in all the required fields below").addClass('text-error');
            }
            else
            {
        $.ajax({

            type:'POST',
            dataType: 'json',
            url:CONTROLLER_URL+'snippet_addEmailHeader',
            data : { HeaderName : HeaderName, EmailType : EmailType, HeaderValue : HeaderValue },   
             complete: function(response){
            // Handle the complete event
            console.log(response.responseText);

            },
        });
});

3 个答案:

答案 0 :(得分:1)

在ajax声明中定义success回调。然后,该回调函数的参数(在此示例中为json)可用作JSON对象:

success: function(json) { // You're looking for: json.id }

答案 1 :(得分:0)

试试这个

$.ajax({
            type:'POST',
            dataType: 'json',
            url:CONTROLLER_URL+'snippet_addEmailHeader',
            data : { HeaderName : HeaderName, EmailType : EmailType, HeaderValue : HeaderValue },
 success: function(data) {
        var mydata = JSON.parse(data);
            console.log(mydata['id']);
    }

答案 2 :(得分:0)

假设你的json喜欢 -
info[{'success':true,'id':234,'name':'X-ghfhg','type':'campaign','value':'fghfgh'}];
那么,

jQuery.ajax({
            type:"POST",
            url: CONTROLLER_URL+'snippet_addEmailHeader',
            success: function(data) {
                if(data)
                {
                  var objJSON = JSON.parse(data);
                  var classinfo = objJSON.info[0];
                  var id = val(classinfo.id);
                  alert(id);

                }                     
            }
        });