Случайный символ в ответе Ajax?

Я использую wordpress. Я делаю вызов ajax с помощью jQuery, PHP выводит объект JSON, но в ответ, который я получаю в javascript, в конце добавлен «0», что приводит к сбою декодирования объекта json.

PHP:

function newspaper_getpost() {
    $d = array('foo' => 'bar', 'baz' => 'long');
    echo json_encode($d);
}
add_action('wp_ajax_newspaper_getpost', 'newspaper_getpost');

JS:

  $.post(MyAjax.ajaxurl,{
        action : 'newspaper_getpost',
        postID : $(this).val()
        }, function(response) {
              console.log(response);
  });

Вывод:

{"foo":"bar","baz":"long"}0

Я попробовал

echo substr( json_encode($d), 0, -1);

и получил

{"foo":"bar","baz":"long"0

, так что уверен, что это не сторона PHP. Я мог бы просто опустить «0» в конце ответа, но я чувствую, что происходит нечто большее, и я не хочу делать дешевый прием, чтобы заставить его работать. JQuery 1.6.1 кстати. Спасибо!

5
задан Fosco 27 May 2011 в 17:08
поделиться