2014-04-14 4 views
0

사용자 삭제에 사용하는 다음 스크립트가 있습니다. 스크립트는 사용자 삭제를 확인했지만 취소하도록 선택하면 스크립트는 여전히 ajax 제출을 처리하고 사용자를 삭제합니다. 나는 빈 else {} 문장을 "do nothing"으로 행동 할 것이라고 생각했지만 명백하게 나는 틀렸다. 이 같은 다른 반환 거짓에서확인 대화 상자에서 "취소"를 클릭해도 jQuery는 여전히 Ajax Post를 제출합니다

 $("#user_delete_submit").click(function(){ 
     var dataString = $("#frm_user_delete").serialize(); 
     if(confirm("This cannot be undone, are you sure?")){ 
      $.ajax({ 
       type: "POST", 
       url: "/admin/user_delete.php", 
       data: dataString, 
       dataType : "json" 
      }) 
      .done(function (data) { 
       $("#user_delete_dialog").dialog({ 
        autoOpen: false, 
        modal: true, 
        close: function(event, ui) { window.location.href = "/admin/user_list.php"; }, 
        title: "Account Deletion", 
        resizable: false, 
        width: 500, 
        height: "auto" 
       }); 
       $("#user_delete_dialog").html(data.message); 
       $("#user_delete_dialog").dialog("open"); 
      }); 
      return false; // required to block normal submit since you used ajax 
     }else{ 
     } 
    }); 

답변

1

:

$("#user_delete_submit").click(function(){ 
    var dataString = $("#frm_user_delete").serialize(); 
    if(confirm("This cannot be undone, are you sure?")){ 
     $.ajax({ 
      type: "POST", 
      url: "/admin/user_delete.php", 
      data: dataString, 
      dataType : "json" 
     }) 
     .done(function (data) { 
      $("#user_delete_dialog").dialog({ 
       autoOpen: false, 
       modal: true, 
       close: function(event, ui) { window.location.href = "/admin/user_list.php"; }, 
       title: "Account Deletion", 
       resizable: false, 
       width: 500, 
       height: "auto" 
      }); 
      $("#user_delete_dialog").html(data.message); 
      $("#user_delete_dialog").dialog("open"); 
     }); 
     return false; // required to block normal submit since you used ajax 
    }else{ 
     return false; 
    } 
}); 
+0

를 완벽하게 고정, 감사 에산. – rws907

+0

당신을 도왔다 고 반갑습니다. –