0

ajax

$('#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 に答える