此函数调用一个回显JSON数据的PHP脚本,它循环遍历JSON对象,创建一个新对象并将此新对象推送到函数返回的数组
function getTestQuestions() {
// alert('10');
var sessionQuestions = [];
$.getJSON('testservice.php?action=getQuestions', function(json){
if (json.your_questions.length > 0) {
var totalQuestions = json.your_questions.length;
totalQuestions_global = totalQuestions;
for (var i = 0; i < totalQuestions; i++) {
var question_object = new Object();
question_object.serialNo = i;
question_object.passage = json.your_questions[i]['passage'];
question_object.cur_question = json.your_questions[i]['question'];
question_object.option1= json.your_questions[i]['option1'];
question_object.option2 = json.your_questions[i]['option2'];
question_object.option3 = json.your_questions[i]['option3'];
sessionQuestions.push(question_object);
}
}
});
return sessionQuestions;
}
下一个函数调用此函数。但我在访问数组内的对象时遇到问题。见代码:
function initialTestLoaded() {
var allQuestions = getTestQuestions();
$('.current_quest').text(allQuestions[0]['serialNo']);
$('.total_quest').text(testQuestions.length);
最后两行中的代码返回一个错误,即无法访问未定义的“serialNo”ppty。
这是我第一次在这里发帖提问,我相信这里的好人会一如既往地给予大力帮助。感谢
答案 0 :(得分:0)
在php中使用 json_decode
json_decode($jsondata, true);
基本示例
<?php
$json_string = 'https://example.com/jsondata.json';
$jsondata = file_get_contents($json_string);
$obj = json_decode($jsondata,true);
echo "<pre>";
print_r($obj);
?>