Как я могу сделать / получить массив из вызова jQuery - PullRequest
2 голосов
/ 16 июля 2011

Jquery Ajax Call вставляет новую запись в БД. Вызванный файл (php) должен вернуть два значения: содержимое вставки и его идентификатор.

Как мне отправить обратно эти значения (массив, xml, echo) на php?

Как я буду отделять их в JQuery Ajax успеха (данные)?

В настоящее время обрабатывающий php-файл возвращает только одну строку, являющуюся вставленным содержимым, которым я затем обновляю представление. Необходимо вернуть идентификатор записи, чтобы я мог подключить элемент.

Пожалуйста, дайте совет, если вам нужно больше разъяснений. Спасибо

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 ]

3 голосов
/ 16 июля 2011

Возвращает строку JSON, закодированную с json_encode().

$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 голос
/ 16 июля 2011

Я предлагаю вам вернуть данные обратно с использованием массива в кодировке JSON ( json_encode () ), повторить его в ответе. JSON - это стандартный и распространенный способ передачи данных обратно клиенту.
Используя jquery, вы можете десериализовать данные, используя $.parseJSON(), как описано здесь .

1 голос
/ 16 июля 2011

Как насчет возврата строки JSON?Вы используете json_encode на стороне сервера и используете jQuery.parseJSON () в своем jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...