아래 코드는 매우 간단합니다. 기본적으로 변수 "ret"가 값을 반환하고 값이 "fail"이면 경고 : "Trigger 2"를 게시해야합니다. 그러나 문제는 IF 문입니다. Alert : "Trigger 1"을 트리거하고 조건문이 나타나면이를 건너 뜁니다.jquery : if 문이 작동하지 않습니다.
내가 잘못하고 있는지 알고 싶습니다. 고맙습니다. 응답이 실제로 fail
경우
$(function() {
var body = $(document).find("body");
body.on("submit", "#form-user-profile", function (e) {
var data = $(this).serialize();
var url = $(this).attr("action");
$.post(url, data, function(ret) {
alert("Trigger 1"); // Triggers alert
if (ret == "fail") {
alert("Trigger 2"); // does not trigger alert
}
});
return false;
});
});
글쎄, 만약'if'가 건너 뛰면'ret'는''fail "'이 아닙니다. AJAX 게시가 완료되었을 때'ret'의 값이 실제로 무엇인지 확인하기 위해 디버깅을 시도 했습니까? 예를 들어, 콜백에서'ret'의 값을 경고하거나 로깅합니까? – ajp15243
함수에서 반환 한 브라우저 디버거 도구를 사용하십시오. –
@ ajp15243 : 예. "fail"로 게시되지만 경고문을 작성하고 "ret"값을 게시하지만 IF 문이 오면 완전히 무시합니다. – Jo3L