title: jQuery callback happening too fast?
body: <p>I am using ASP.NET MVC C#</p>
  
  <p>I have a jQuery call that deletes a Book, then in the callback I call a function that refreshes the list of Books.</p>
  
  <pre><code>function rembook(id) {
          var agree=confirm("Deletion cannot be undone.  Continue?");
          if (agree)
          {
              jQuery.ajax({ url: "/Books/Delete/" + id, dataType: null, type: "POST", cache: true, callback: LoadBooks(), data: null });
              return false;
          }
          else
              return false;
      }   
  </code></pre>
  
  <p>Here's LoadBooks(), if it matters:</p>
  
  <pre><code>function LoadBooks() {
          $(".BookList").hide();
          $(".BookList").load("/Books/Edit/&lt;%= Model.AuthorID %&gt;");
          $(".BookList").show('slow');
      }
  </code></pre>
  
  <p>The post works and the LoadBooks() function is called.  However, the refreshed list of Books still contains the deleted book.  If I then manually call the LoadBooks() function (via a link on the page), the books then reload without the deleted book.  Why is the first Books reload still showing the deleted book?  Is it happening before the actual deletion of the Book is completed?</p>
  
  <p>(I get the same results with $.post("/Books/Delete/" + id, LoadProperties());)</p>
  
  <p>Thanks.</p>