2011-06-17 13 views
16

Mam wywołanie ajax powiązane z linkiem za pośrednictwem jQuery, i chcę go przechwycić przez okno dialogowe potwierdzenia. Ale wywołanie ajax jest uruchamiane niezależnie od wybranej opcji (nawet jeśli użytkownik zamyka okno dialogowe).Przechwytywanie wywołania jQuery.ajax() z potwierdzeniem()

Czy istnieje sposób na potwierdzenie, że działa tak, jak działa w kontekście synchronicznym?

HTML:

<a href="#" class="removeItem delete">remove</a> 

jQuery:

$('.delete').click(function() { 
    confirm('Are you sure you want to delete this?'); 
}); 


$('.removeItem').click(function (event) { 
    event.preventDefault(); 

    $.ajax({ 
     url: 'myUrl', 
     type: "POST", 
     data: { 
      // data stuff here 
     }, 
     success: function() { 
      // does some stuff here... 
     } 
    }); 
}); 

Odpowiedz

66
$('.removeItem').click(function (event) { 
    if (confirm('Are you sure you want to delete this?')) { 
     $.ajax({ 
      url: 'myUrl', 
      type: "POST", 
      data: { 
       // data stuff here 
      }, 
      success: function() { 
       // does some stuff here... 
      } 
     }); 
    } 
}); 
Powiązane problemy