我有一个可以执行动态计算并同时发布到Pardot的表单。Ajax代码可在除IE之外的所有浏览器中使用。有什么理由在IE中无法正常工作吗?这是代码:
$('#greenQuote').submit(function(e){
e.preventDefault();
premium();
var theData = $(this).serialize();
$.post('http://go.mysite.com/l/34381/2014-05-19/hr8w', theData).success(function(data){
});
});
我还添加了以下代码,并在查看了对其他类似问题的答复后进行了测试,但是没有运气。它放在“ $ .post”上方。
$.ajaxSetup({cache:false})
对原始代码进行了以下编辑。我还向页面添加了其他脚本。该代码由CDNJS托管,可以在以下位置找到:http ://cdnjs.cloudflare.com/ajax/libs/jquery-ajaxtransport-xdomainrequest/1.0.2/jquery.xdomainrequest.min.js 。
$('#greenQuote').submit(function(e){
e.preventDefault();
premium();
var theData = $(this).serialize();
//Eliminates "No Transport" Error in ie
jQuery.support.cors = true;
$.ajaxSetup({cache:false});
if('withCredentials' in new XMLHttpRequest())
{
//alert("CORS supported (XHR)");
$.post('http://go.mysite.com/l/34381/2014-05-19/hr8w', theData);
}
else if(typeof XDomainRequest !== "undefined")
{
//alert("CORS supported (XDR)");
$.ajax({
type: 'POST',
url: 'http://go.mysite.com/l/34381/2014-05-19/hr8w',
data: theData,
dataType: 'json'
});
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句