Проблема, с которой вы сталкиваетесь, связана с использованием complete
, где вы должны использовать success
.
Если вы проверяете документацию , следующие поверхности:
- Обратный вызов
complete
передается jqXHR
в качестве первого аргумента - В то время как обратный вызов
success
/ done
получает data
(фактические данные ответа) какпервый аргумент.
Поскольку вы используете complete
, response.Message
отображается на (неопределенное!) свойство объекта jqXHR
.
Решение вашегопроблема заключается в использовании обратного вызова success
- или, что еще лучше, done
, поскольку в jQuery 1.8 будет удалено success
.
$.ajax({
type: 'GET',
url: '/Pay/Build64/',
dataType: 'json',
async: false
}).done(function(response) {
alert('AJAX complete!');
ret = response.Message;
});