조회 요청한 데이터가 출력될때까지, 대기를 해야 하고,
데이터를 확인후에만 다음 단계로 넘어가야 할때. 주로 사용.
function checkValid(x) {
return new Promise(function(resolve) {
$.ajax({
type: "POST",
url: "/api/",
data: JSON.stringify({ "x": x }),
contentType: "application/json",
dataType: "json",
beforeSend: function () {
// 필요하면 로딩 표시 시작
// showLoading();
},
success: function (data) {
resolve(true); // 성공시
},
error: function () {
resolve(false); // 실패, 에러
},
complete: function () {
// 필요하면 로딩 숨김
// hideLoading();
}
});
});
}async function saveOrSubmit() {
const isValid = await checkValid(x);
if (!isValid) {
return; // 검증 실패하면 종료
}
console.log("모든 검증 완료 → 실제 저장/처리 로직 실행");
proceedToNextStep(); // 또는 저장 AJAX 호출 등
}$("#btn").click(function() {
saveOrSubmit();
});