简体   繁体   中英

IE8 jquery json response triggers download

I want IE8 to work with the following piece of jquery that returns ajax request as json:

$.ajax({
        url: formAction,
        type: 'post',
        dataType: 'json',
        data: form,
        success: function(data) {
            closeBlocker();
            if (data.count != 0) {
                $('#divid').toggle('slow');
            } else {
                $("#anotherdiv").css('display', 'none');
            }
            processSearchResult(target, data);
            reloadMap(data);
        }
});

In all other browsers, this triggers a call to fetch data. In IE8, however, this results in a dialog box popping up that asks users if they want to download a file. It looks like this:

在此处输入图片说明

I saw this post but havent been able to properly change the ContentType.

How can I do the same thing in IE8 without affecting other browsers? Thanks for your ideas!

I guess it's related to MIME type .

You have to tell browser to treat it as text/html. Then it will not try to download it, and will display it as text instead.

For this you can send Content-type = "text/html" in header.

Probably this will solve your issue

IE8 treats json response as file and tries to download it

I had the same problem when I try to do ajax calls from other domain, I introduced proxy with my URL and it got fixed.

Hope it helps.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM