0

阿贾克斯

$('#stb_no').blur(function(){
    var stb_no= $('#stb_no').val();
    $.ajax({
        url: "http://localhost/paymybill/ajax/stb_info",
        global: false,
        type: "POST",
        data: {
            'stb_no':stb_no, // you should give a key to the variable
        },
        success: function(data) {
            $('#amount').val(data);
     //     $(".email_msg").addClass("red");
        },
        error: function(jqXHR, textStatus, errorThrown) {
            console.log(textStatus, errorThrown);
        }
    });
});

控制器代码

public function stb_info(){
    $stb_no=$this->mso->alldata_stbno($this->input->post('stb_no'));
    echo json_encode($stb_no);
}

我要出去了

[{"sxb_no":"xxxxxx","mzo_name":"xx","cto_name":"xxxxx","area":"xxxxx","name_sxb_owr":"","mobile_no":"xxxxxx","email":"xxxxx@yahoo.com","amount":"xxx"}]

我需要知道如何获取每个值例如:-如果我想获取电子邮件 ID,我应该在 jquery 中做什么,请帮助我,我是 ajax 新手

4

3 回答 3

1

大多数浏览器都支持 JSON.parse(),它在 ECMA-262 中定义并且是推荐的方式。它的用法很简单(我将使用您的示例 JSON):

var json = '{"area":"xxxxx",...,"email":"xxxxx@yahoo.com","amount":"xxx"}';
var obj = JSON.parse(json);

请注意,无法使用 obj.email,因为您正在解析数组。

编辑:检查您的评论,您需要知道数据参数是 JSON 对象,首先解析它,然后您可以执行以下操作:

$('#amount').val(obj[0].email);

于 2012-10-25T06:19:36.700 回答
1

只需添加到$.ajax调用参数dataType:"json",Jquery 会自动在成功参数中解析它。然后使用它data[0]['email'];

于 2012-10-25T06:25:27.440 回答
0

例如 :

$('#stb_no').blur(function(){
    var stb_no= $('#stb_no').val();
    $.ajax({
        url: "http://localhost/paymybill/ajax/stb_info",
        global: false,
        type: "POST",
        data: {
            'stb_no':stb_no, // you should give a key to the variable
        },
        success: function(data) {
            $('#email').val(data[0]['email']);

            //OR
            var obj = JSON.parse(data);
            $('#email').val(obj[0].email);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            console.log(textStatus, errorThrown);
        }
    });
});
于 2012-10-25T06:19:46.420 回答