Как я могу получить текст ответа от AJAX / JQuery? - PullRequest
6 голосов
/ 20 марта 2011

Представь, что я запускаю это:

     $.ajax({
        type: 'POST',
        url: '/ajax/watch.php',
        data: {'watch':'aukcia', 'id':aukciaID},
        complete: function(responseText){
           alert(responseText);
        }
     });

Внутри /ajax/watch.php, скажем, у меня есть это:

echo 'this is what I want';

И предупреждение (responseText) возвращает:

[object Object]

Вместо моей текстовой строки, которая мне нужна. Любая помощь, пожалуйста?

Ответы [ 2 ]

16 голосов
/ 20 марта 2011

Похоже, ваш jQuery каким-то образом возвращает объект XMLHttpRequest вместо вашего ответа.

Если это так, вам следует запросить его свойство responseText, например:

 $.ajax({
    type: 'POST',
    url: '/ajax/watch.php',
    data: {'watch':'aukcia', 'id':aukciaID},
    complete: function(r){
       alert(r.responseText);
    }
 });

Однако, если это не сработает, возможно, вы действительно получаете ответ JSON, а [object Object], который вы видите, может быть отображением вашего ответа JSON в вашем браузере.

Вы должны иметь возможность проверитьего содержимое путем навигации по свойствам объекта.Однако, если вы хотите, вы также можете указать jQuery не анализировать ваш ответ JSON, включив в свой вызов dataType: 'text':

 $.ajax({
    type: 'POST',
    url: '/ajax/watch.php',
    data: {'watch':'aukcia', 'id':aukciaID},
    dataType: 'text',
    complete: function(data){
       alert(data);
    }
 });

Для получения дополнительной информации см .: http://api.jquery.com/jQuery.ajax/

2 голосов
/ 28 сентября 2018

Используйте на стороне клиента ajax, как этот

 $.ajax({
        type: "POST",
        url: "insert-data.php",
        data: 
    {student_name:student_name,student_roll_no:student_roll_no
     ,student_class:student_class},
        dataType: "JSON",
        success: function(data) {
         $("#message").html(data);
        $("p").addClass("alert alert-success");
        },
        error: function(err) {
        alert(err);
        }
    });

на стороне сервера после исключения запроса, вы можете использовать его, чтобы получить успех при запросе false, если запрос содержит ошибку

if($stmt->execute())
 {
$res="Data Inserted Successfully:";
 echo json_encode($res);
}
 else {
 $error="Not Inserted,Some Probelm occur.";
echo json_encode($error);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...