簡體   English   中英

Ajax的jQuery從PHP獲取數據的價值

[英]ajax jquery get value of data from php

[{
    "SchoolId":"015-08-0034-009-37",
    "SubjectId":"08-0034-00613",
    "Student":[
        {"StudentId":"T-15981","StudentName":"John"},
        {"StudentId":"T-15982","StudentName":"Paul"}
    ]
}]

我從我的php json_encode中獲得了一種像這樣的json格式。 我正在獲取這樣的數據

for (var i = 0; i < data.length; i++) {
     console.log(data.[i].SchoolId);
     console.log(data.[i].SubjectId);
}

我想得到的價值

 {"StudentId":"T-15981","StudentName":"John"},
 {"StudentId":"T-15982","StudentName":"Paul"}

如何獲得兩個條目的值?任何想法都值得贊賞

UPDATE

success: function(data) {


    for (var i = 0; i < data.student.length; i++) {
        console.log(data.student[i].StudentId);
        console.log(data.student[i].SchoolId);
    }
},

這是我通過將數據類型從json更改為html從ajax響應中獲得的print_r。這是network>XHR>Response的輸出

Array
(
    [0] => Array
        (
            [SchoolId] => 015-08-0034-009-37
            [SubjectId] => 08-0034-00613
            [Student] => Array
                (
                    [0] => Array
                        (
                            [StudentId] => 015-08-0034-009-37
                            [firstname] => Chona
                            [lastname] => Sy
                            [middleinitial] => D
                        )

                    [1] => Array
                        (
                            [StudentId] => 015-08-0034-009-37
                            [firstname] => Alona
                            [lastname] => Sy
                            [middleinitial] => D
                        )

                )

        )

    [1] => Array
        (
            [SchoolId] => 015-08-0034-009-38
            [SubjectId] => 08-0034-00613
            [SupersededProperty] => Array
                (
                    [0] => Array
                        (
                            [StudentId] => 015-08-0034-009-36
                            [firstname] => Edith
                            [lastname] => Sy
                            [middleinitial] => D
                        )

                )

        )

)

您可以在FIDDLE中找到工作示例

JS代碼

var e = {
    "Student":[
        {"StudentId":"T-15981","StudentName":"John"},
        {"StudentId":"T-15982","StudentName":"Paul"}
    ], 
    "SchoolId":"015-08-0034-009-37",
    "SubjectId":"08-0034-00613",
};


for(var i=0; i<e.Student.length; i++){
  alert('StudentId = ' + e.Student[i].StudentId + '; StudentName = ' + e.Student[i].StudentName);   
}
var data = [{
    "SchoolId":"015-08-0034-009-37",
    "SubjectId":"08-0034-00613",
    "Student":[
        {"StudentId":"T-15981","StudentName":"John"},
        {"StudentId":"T-15982","StudentName":"Paul"}
    ]
}] 

for(var i=0; i<data[0].Student.length; i++){
  var StudentData = data[0].Student[i];
   alert(StudentData.StudentId); 
}

您的問題是,數組中有一個數組。 這樣會在json周圍出現方括號[{...}]。

Array
(
    [0] => Array
        (
...

您不應該回顯第一個數組。

例如,現在看來

echo json_encode(array($data));

相反,你應該有

echo json_encode($data);

作為最后的嘗試,嘗試回顯$ data [0];。

看到這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM