AJAX发布不适用于IE

I am trying to send a form through AJAX so the data gets validated and the updated on the database. It works just fine on Chrome and Firefox, but on IE it does not work at all! And it doesn't raise any errors.

The summary of my PHP code looks like this (I am using Codeigniter as my framework):

function update()
{
    if ($this->uri->segment(3))
    {
        if ("validation ok")
        {
            "update the database"
            $this->session->set_flashdata('data_updated', 'The row has been updated successfully');
            redirect(current_url()); // so I can see the flashdata on my page.
        }

        $data = array(...);

        $this->load->view('template', $data); 
    }
}

And that's it. I have been trying to get rid of the "redirect" part, thinking that it may have something to do with my problem. But even if I comment that line, the data doesn't get inserted.

Now, my AJAX Code looks like this:

jQuery.ajaxSetup({ cache: false });

jQuery(document).on("submit", ".formmother", function(e) {
    e.preventDefault();
    jQuery(".menumodal").html('');
    jQuery(".menumodal").html('<div class="modal-header"> <a class="close" data-dismiss="modal" aria-hidden="true">×</a>  <h3 id="myModalLabel">Enviando informações...</h3>  </div>  <div class="modal-body"><div class="loader"></div></div>');

    jQuery.ajax({
        type: "POST",
        url: jQuery(this).attr("action"),
        data: jQuery(this).serialize(),
        cache: false,
        dataType:"html",
        success: function(html){
            jQuery(".menumodal").html(html);
        }, 
        error: function(e){
            alert(e);
        }

    });

    // jQuery.post(jQuery(this).attr("action"), jQuery(this).serialize(), function(html) {
        // jQuery(".menumodal").html(html);
    // });
   // prevent normal submit
});

I have restructured the entire ajax call to see if can get anything out of it. But it just won't work.

What happens:

When I click to edit any row, it loads up (via ajax) an form with the data inside a modal (bootstrap modal). And that part works fine. Then when I click "Save" in other browsers it loads up the same modal with the same page (that was redirected) and shows up a (flashdata) success message. And the data gets updated on the database.

But on IE what happens is that when I click the Save button, it loads up the same thing again, without any change! The row doesn't get uptaded on the database and does not give me any error.

One interesting thing I notice though is that if I get "data" part out of the AJAX call, then it returns my validation errors. But if I leave an obrigatory field empty, the validation does not return any errors.

The ajax gets triggered and it gets "success" on IE, but it doesn't return the new page, and the row is not updated (It returns the same page before the edited data). If I disable the AJAX call, it all works fine too. So there's something to do with the AJAX call itself.