onsubmit return 질문입니다.

onsubmit return 질문입니다.

QA

onsubmit return 질문입니다.

본문


<form name="fitemlistupdate" method="post" action="./itemlistupdate.php" onsubmit="return fitemlist_submit(this);" autocomplete="off" id="fitemlistupdate">
 
 
<script>
function fitemlist_submit(f)
{
    if (!is_checked("chk[]")) {
        alert(document.pressed+" 하실 항목을 하나 이상 선택하세요.");
        return false;
    }
    if(document.pressed == "선택삭제") {
        // 해당 상품에 속한 컨텐츠를 수강 중이거나 수강 완료한 회원 정보가 있는지 확인
        $.ajax({
            url: "<?php echo G5_THEME_URL ?>/admin/proc/ajax_check_yc_item.php",
            type: "post",
            data: $(f).serialize(),
            success: function(data){
                if ( data ) {
                    alert("상품에 속한 강좌 및 컨텐츠가 존재하여 삭제할 수 없습니다.");
                    return false;
                } else {
                    if(!confirm("선택한 자료를 정말 삭제하시겠습니까?")) {
                        return false;
                    }
                }
            },
            error: function(xhr, desc, err) {
                console.log(xhr);
                console.log("Details: " + desc + "\nError:" + err);
            }
        });
    }
    return true;
}
</script>

 

위 코드 처럼 onsubmit에 있는 함수 fitemlist_submit(this)에서 return false 인경우 action이 되지 않아야 정상 아닌가요? return false인 경우에도 계속 action이 작동하네요..ㅠㅠ 왜그런걸까요?

이 질문에 댓글 쓰기 :

답변 1

ajax 내부에서 false 는 해당 함수(ajax)내에서 처리였던가 그래요.

저는 아래처럼 사용합니다. 예전에 한번 애먹은 적이 있어서 기록해둔 내용입니다.

http://jsbsoft.kr/bbs/board.php?bo_table=scribble&wr_id=20

 

function f_submit(f){
    var flag = "true";
    $.ajax({
        type:"post",
       ~~~
      success:function(rt_val){
        if(rt_val !== 'yes') {
           flag = "false";
        }
    }
 
    if(flag !== "true"){
        return false;
    }
 
    return true;
}
 
"false" 랑 fasle 구분 처리

 

 

더 자세한 건 구글링 해보세요.

 

https://www.google.com/search?source=hp&ei=P-lDXcH0LZeXr7wPwZyd8As&q=ajax+return+false&oq=ajax+return+false&gs_l=psy-ab.3..0l3j0i30l3j0i5i30l4.581.4587..4825...2.0..0.114.2092.1j19......0....1..gws-wiz.....0..0i131j0i10.RTwsmbI6q3w&ved=0ahUKEwiBkOTu1-PjAhWXy4sBHUFOB74Q4dUDCAU&uact=5

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,532 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT