возврат responseText из jQuery.получить()

Я пытался сделать что-то вроде этого :

var msg = $.get("my_script.php");

Я думал, что msg будет установлен в текст, возвращаемый my_script.php, т. е. responseText объекта jqXHR. По-видимому, это не работает так, как msg всегда устанавливается в "[object XMLHttpRequest]"

есть ли быстрый 1 линия способ сделать то, что я хочу?

спасибо.

4 ответов


после некоторого тестирования я нашел решение.

Мне нужно, чтобы вызов был синхронным,$.получить стенографическую функцию всегда асинхронно, поэтому мне нужно будет использовать $.Аякс, вот так:--2-->

var msg = $.ajax({type: "GET", url: "my_script.php", async: false}).responseText;

Я не думаю, что есть лучший способ сделать это, спасибо за ваши ответы.


вы всегда можете использовать:

var msg;
$.get("my_script.php", function(text) {
  msg = text;
});

Если по какой-то причине ответ является текстом, удаленный скрипт может изменять тип контента на что-то вроде JSON, и, таким образом, jQuery пытается проанализировать строку перед выводом вам.


возвращаемое значение-это просто объект jqXHR, используемый для запроса ajax. Для получения данных ответа необходимо зарегистрировать обратный вызов.

$.get("my_script.php", function(data) {
  var msg = data;
  alert(msg);
});

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