views:

84

answers:

2

Hello,

I have a jQuery code to allow users to login using a lightbox (http://colorpowered.com/colorbox/) and immediately start downloading files, without being redirected or having the page reloaded. It's perfectly working in Firefox but Internet Explorer keeps showing the login box until I reload the page :(

<? if (!$this->session->userdata('user_logged_in')): ?>

<script type="text/javascript">
$(document).ready(function() {
    $('a[href^="/link/"]').click(function(event){
        var status = $.ajax({
            url: "/status",
            async: false
        }).responseText;
        if (status != 'USER_LOGGED_IN')
        {
            $.fn.colorbox({href:"/login"});
            event.preventDefault();
        }
    });
});
</script>

<? endif ?>

Your help would be greatly appreciated.

+1  A: 

The problem is that by default jQuery.ajax retrieves data using GET requests, which are being cached by IE. You can fix this by telling the browser to not cache AJAX results:

$.ajax({
        url: "/status",
        async: false,
        cache: false
    })
Justin Ethier
Thanks but I actually tried this. It has no effect at all.
Isamtron
A: 
Alec
Same problem :(
Isamtron