Process.php
<?php
$myArray= array("John", "Rita");
echo json_encode($myArray);
?>
myJquery.js
$.post('Process.php', $(this).serialize(), function(data) {
alert(data); // output is: ["John", "Rita"]
alert(typeof(data)); // output is: string
alert(data.length);// output is: 19
alert(data[0]); // output is: [ //How can I get John here?
var person = ["John", "Rita"];
alert(typeof(person)); // output is: object
alert(person.length);// output is: 2
alert(person[0]);// output is: John
}).fail(function() {
alert( "Some Problem Occured");
});
对于jquery数组,我可以轻松访问数组元素,如上所示。但是对于jquery中json_encode获取的数组,我无法访问数组elemts。请指导我在Jquery文件中需要哪些更正?
答案 0 :(得分:1)
您可以使用dsquery user -limit 0 | dsget user
或JSON.parse(data)
从字符串创建JSON对象。
或者您可以向$.parseJSON(data)
添加参数告诉它,响应将是一个json对象。
$.post();
答案 1 :(得分:0)
您应该使用$.post('Process.php', $(this).serialize(), function(data){
}, 'json') // <--- here you can add json
.fail(function() {alert( "Some Problem Occured" );});
示例:
jQuery.parseJSON()
答案 2 :(得分:0)
像这样使用JSON Parse
$.post('Process.php', $(this).serialize(), function(data){
var data= JSON.parse(data);
alert(data[0]);
}