jquery ajax 跨域提交,附IE浏览器解决方案

  1. 后台输出内容之前需要指定header("Access-Control-Allow-Origin: *");
  2. post 之前
    jQuery.support.cors = true;
    
  3. IE浏览器设置“工具->Internet 选项->安全->自定义级别”将“其他”选项中的“通过域访问数据源”选中为“启用”或者“提示”

对于IE浏览器不支持的情形:

var url="POSTURL";
if(window.XDomainRequest){ xdr = new XDomainRequest() xdr.onload = function () { var data = $.parseJSON(xdr.responseText); if (data.success) {
} }; xdr.onerror = function (e) { alert(e); }; xdr.open("GET", url); xdr.send(); }else{ $.get(url, {}, function (data) { if (data.success) {
} }, 'json'); }

或者采用jsonp的方式,jsonp只支持get方式

$.ajax({
                url: "",
                dataType: "jsonp",
                jsonp: "callback",
                data: {action: "action", options: options},
                success: function (data) {
                    if (data.status) {
                        
                    }
                    else {
                        
                    }
                }});

注意返回值必须用$_GET['callback']括起来。