Ну, вы внутри функции - используйте переменную область видимости; -)
function doPost(dType, postData, uri) {
var result;
$.ajax({
url: SITE_URL + uri,
dataType: dType,
data: postData,
async: false,
success: function(data){
result = data;
});
return result;
}
Это на самом деле работает, но я думаю, что часть async
обязательна ... В противном случае вызов $.ajax
немедленно вернется, и result
все равно будет неопределенным - вы всегда получите undefined
как результат вашего вызова функции.
Однако, когда вы делаете вызов $.ajax
синхронным, он блокируется до тех пор, пока данные не будут получены, и вы можете вернуть данные как result
вашей собственной функции.
Но вы должны понимать, что при использовании этого метода никакой другой код не будет выполняться до тех пор, пока не закончится загрузка ajax!