getJSON автозаполнение и сообщение? - PullRequest
1 голос
/ 20 июля 2011

, используя это, чтобы получить данные для функции автозаполнения jquery ui, но действительно хотите отправить это как сообщение. В противном случае все работает нормально ...

$.getJSON( "/youradmin_v2/scripts/php/process.php",{ 
term: extractLast( request.term ), func: 'autoCompleteMenu', query : 'GROUP BY contentType'}, 
response );

Я пробовал это;

$.post(url, dataToBeSent, function(data, textStatus) {
  //data contains the JSON object
  //textStatus contains the status: success, error, etc
}, "json");

но при этом автозаполнение портится, так как "json" заменяет ответ.

вот текущее рабочее автозаполнение с getJSON. http://pastebin.com/hmMswasS

любая помощь приветствуется!

Ответы [ 3 ]

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

Когда мне не подходит встроенный jquery $ .post, я возвращаюсь и использую низкоуровневый метод $ .ajax. Попробуйте что-то вроде этого:

<script>
  $.ajax({
    type: 'POST',
    url: '/youradmin_v2/scripts/php/process.php',
    data: dataToBeSent,
    dataType: 'json',
    success: function(data) {
      // handle response here
      // log(data);
    }
  });
</script>

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

<?php
  json_encode($data_array);
?>
0 голосов
/ 20 июля 2011

Согласно этому хорошему ресурсу , вам нужно всего лишь добавить это в файл PHP, который обслуживает ваш ответ JSON:

header('Content-type: application/json');
0 голосов
/ 20 июля 2011

Установлены ли ваши заголовки в вашем php-файле на application/json?

...