我现在一直在使用ajax,我想了解有关检索数据的更多信息。我只知道如何使用callbacks
获得输出。
当我使用回调并且我想要单独的值时,我使用split()
或explode()
,这样我就可以获得个人价值。有比这更好的方法吗?如果我继续使用这个,我认为如果输入与pattern
/ split
的{{1}}具有相同的字符,那么它会变得混乱。
我想知道如何通过变量单独检索数据,而不是explode
或HTML输出。
问你是否理解我的问题。
感谢。
答案 0 :(得分:3)
您可以将PHP页面的输出作为jSON
返回。您可以使用each
方法迭代json结果并获取项目。这比做split
样本
$.getJSON("yourphppage.php", function(data){
$.each(data.ResultSet.Results,function(i,item){
console.log(data.ResultSet.Results[i].Name);
console.log(data.ResultSet.Results[i].Age);
});
});
假设您从php页面返回如下所示的JSON
结果
{
"ResultSet": {
"ErrorMessage": "No error",
"Results": [
{
"Name": "John",
"Age": "22"
},
{
"Name": "John",
"Age": "22"
}
]
}
}
编辑:使用 jSONLint 时,这是一款非常棒的基于网络的工具,可以告诉您JSON是否有效。
答案 1 :(得分:0)
使用Ajax / jquery $ .get示例:
$.get(
path_to_your_script. "?run=process_ajax_callback",
{
var_ajax: 1, // var sample
// more vars to your function
},
function(response, status) {
// evaluate response var as a javascript object/array
},
'json' // we expect json formatted response
);
从PHP函数返回值:
function process_ajax_callback()
{
// ...
$output['var'] = array(1, 2, 3); // var sample
echo json_encode($output); // encode as json!!!
exit; // very important (only output from this function)
}