Ajax提交打开新窗口,浏览器拦截处理;以及跨域问题


//主要是添加同步处理
$.ajax({
    url: "ashx/OrderHander.ashx?action=CheckRepeat",
    data: { "OrderId": data.OrderNo },
    dataType: "json",
    async:false,
    type: "post",
    success: function (data) {
        if (data == "1") {
            window.location.href = "index.html";
            return;
        } else {
            //var v = $("input[name='approve']:checked").val()
            var i = 0.01;   //支付价格处理,暂时设置为0.01
            //location.href = "/create_direct_pay_by_user-CSHARP-UTF-8/pay.aspx?paytypeid=1&username=" + i + "&Orderid=" + data.OrderNo + "";
            result = "/create_direct_pay_by_user-CSHARP-UTF-8/pay.aspx?paytypeid=1&username=" + i + "&Orderid=" + data.OrderNo + "";                                    
        }
        if (result.length > 0) { 
            window.open(result, "_blank");
            return;
        }
    }
});

 ajax请求跨域问题

  一般处理程序开发的接口,需要使用

context.Response.AddHeader("Access-Control-Allow-Origin", "*");
来处理返回值。可躲避跨域问题。不过只兼容最新浏览器。故不建议使用一般处理程序来做跨域接口,可采用WEBAPI等。
 
原文地址:https://www.cnblogs.com/siaslfslovewp/p/5618624.html