如何从jQuery Call中创建/检索数组

时间:2011-07-16 14:20:13

标签: php javascript jquery ajax json

Jquery Ajax Call在DB上插入新记录。文件被调用(php)需要返回两个值,insert的内容和它的id。

我应该如何在php上发回这些值(数组,xml,echo)?

如何在Jquery Ajax成功(数据)中分离这些?

目前处理php文件只返回一个字符串,即插入的内容,然后我用它来更新视图。需要返回记录ID,以便我可以连接元素。

如果需要更多说明,请提供建议。谢谢

JQUERY

$.ajax({
                    type:'post',
                    url: 'posts_in.php',
                    data: $("#postentry").serialize(),
                    success:function(data){
                        var id='posts';
                        //split returned data here
                        $('<div></div>').attr('id',id).addClass('boxee').html(data).prependTo('#boxer');
                        $('#tittle_ent').val('').focus();
                    }

PHP

echo $value1,$value2;

print_r($arrayhere);

XML?

3 个答案:

答案 0 :(得分:3)

返回用json_encode()编码的JSON字符串。

$php_array_result = array(1,2,3,4,5,6);

// Send the correct MIME header and echo out the JSON string
header("Content-type: application/json");
echo json_encode($php_array_result);
exit();

在jQuery ajax调用中,添加dataType: "json"属性。

$.ajax({
   type:'post',
   url: 'posts_in.php',
   dataType: "json",
   success: function(data) {
      console.dir(data);
   },
   // etc...

答案 1 :(得分:1)

如何返回JSON字符串? 您在服务器端使用json_encode并在jQuery上使用jQuery.parseJSON()

答案 2 :(得分:1)

我建议您使用JSON编码数组(json_encode())对数据进行编码,并将其作为响应回显。 JSON是将数据传递回客户端的标准通用方法 使用jquery,您可以使用$.parseJSON()反序列化数据,如here所述。