AJAX-запросы асинхронные.Ваша функция doSomething выполняется, выполняется запрос AJAX, но это происходит асинхронно;так что остальная часть doSomething выполняется, и значение status
при возврате не определено.
Фактически ваш код работает следующим образом:
function doSomething(someargums) {
return status;
}
var response = doSomething();
И затем, через некоторое время,ваш запрос AJAX завершается;но уже слишком поздно
Вам нужно изменить свой код и заполнить переменную "response" в обратном вызове "success" вашего AJAX-запроса.Вам придется отложить использование ответа до тех пор, пока не завершится вызов AJAX.
Там, где вы раньше могли иметь
var response = doSomething();
alert(response);
Вы должны сделать:
function doSomething() {
$.ajax({
url:'action.php',
type: "POST",
data: dataString,
success: function (txtBack) {
alert(txtBack);
})
});
};