Нужно вернуть responseText из jQuery.ajax вместо использования функции success
Я хотел бы иметь функцию, которая возвращает repsonseText вызова jQuery.ajax(). Все примеры, которые я видел, говорят об использовании функции "success" для обработки возвращаемых данных. Однако для моей реализации мне нужно что-то вроде следующего:
function getRemoteValue(id) {
var request = jQuery.ajax({
url:'somefile.php',
dataType:'text'
});
return request.responseText;
}
Когда я вызываю эту функцию, Firebug показывает, что запрос выполняется, и возвращается правильный ответ. Однако, когда я пытаюсь сделать следующее, я получаю только пустую строку:
var some_value = getRemoteValue(1); // The problem is here. some_value is empty.
jQuery('.someclass').html(some_value);
// Other processing using some_value;
Опять же, для моей реализации я не могу делать jQuery('. Someclass'). Html(some_value); в вызове ajax (). Как я могу получить ответный текст? Спасибо!
1 ответ
Робер,
Следующий код действителен, но возвращает ноль
var some_value = getRemoteValue(1);
Вызов ajax - это асинхронный вызов, он просто создает экземпляр процесса, поэтому у вас всегда будет эта проблема.
Вам нужно переместить свой код в ваш обработчик успеха ajax для выполнения любых почтовых операций.