Мне нужна помощь в поиске альтернативы синхронному jQuery ajax

У меня очень сложная форма, которая содержит несколько вкладок. Каждая вкладка содержит уникальныйPlupload экземпляр (для загрузки нескольких изображений). Форма позволяет пользователю загрузить медицинское изображение »дело' где каждый случай состоит из нескольких изображений "исследования (например, КТ), и каждое исследование содержит несколько изображений.

Когда пользователь нажимаетОтправить' Я перехватываю нажатие с помощью jQuery, потому что мне нужно сделать следующее:

Проверьте, заполнены ли обязательные поля[легко]Получить уникальный идентификатор с моего сервера. Этот идентификационный номер требуется каждому экземпляру Plupload, чтобы знать, в какой каталог загружать данные.

В моей функции, вызванной при отправке формы, у меня есть следующий фрагмент кода:

var case_id;

// Code to check the required fields are entered
....

// Get the case id number from the server
$.get('ajax/unique-case-id').done(function(data){
    case_id = data;
});

// do something with case_id and other things. MUST happen after the ajax call
....

// if there was a problem uploading the images, stop the form from submitting
if (problem_occured) {
    return false;
}

С моей текущей логикой мне нужен скрипт для приостановки, пока он не получит case_id. Это было возможно до jQuery 1.8, но свойство $ .ajax () async: false устарело.

У меня вопрос двоякий:

Есть ли способ задержать скрипт, пока я не получу требуемый case_id?Если нет, есть идеи, как я могу изменить свою логику, чтобы обойти это?

Вы можете быть удивлены, почему case_id так важен. Экземпляры plupload выполняют загрузку до отправки формы, и для их загрузки требуется каталог. Я хочу, чтобы загружаемые изображения помещались в папку на моем сервере с именем case_id. Это позволит PHP-скрипту на сервере выяснить, что с ними делать, когда он получит оставшиеся данные формы POST.

Ответы на вопрос(1)

Ваш ответ на вопрос