Internet Explorer中的跨域Ajax表单提交
我的网站上有一个lead表单,它与zoho CRM集成在一起 我要做的是制作一个ajax表单提交。它在除Internet Explorer之外的所有浏览器中都能完美工作 以下是我正在使用的代码:Internet Explorer中的跨域Ajax表单提交,ajax,internet-explorer,jquery,cross-domain,Ajax,Internet Explorer,Jquery,Cross Domain,我的网站上有一个lead表单,它与zoho CRM集成在一起 我要做的是制作一个ajax表单提交。它在除Internet Explorer之外的所有浏览器中都能完美工作 以下是我正在使用的代码: $.ajax({ type: 'POST', url: 'https://crm.zoho.com/crm/WebToLeadForm', crossDomain: true,
$.ajax({
type: 'POST',
url: 'https://crm.zoho.com/crm/WebToLeadForm',
crossDomain: true,
data: {
"xnQsjsdp":"ppmcCsqovwVthYo*kRl79w$$",
"xmIwtLD":"VhOb6HhGDim4uPu3Iakv-bchDcGQB5gh",
"actionType":"TGVhZHM=",
"returnURL": "http://www.taxday.co.uk/",
"First Name":$("#contact-name").val(),
"Last Name":$("#contact-subject").val(),
"Phone":$("#contact-home-number").val(),
"Email":$("#contact-email").val(),
"Description" : $("#contact-message").val(),
"LEADCF1":prof,
"Street" : $("#contact-address").val(),
"Zip Code" : $("#contact-postcode").val()
},
dataType: 'json',
success: function(responseData, textStatus, jqXHR) {
alert("Form Submitted");
},
error: function (responseData, textStatus, errorThrown) {
alert("Form Submitted");
}
});
但交易警报出现在IE中,但zoho端没有捕捉到领先优势
任何帮助都将不胜感激
感谢跨域,IE要求您使用XDomainRequest而不是XMLHttpRequest。jQuery无法执行此操作,因此您必须手动执行此操作:
if ($.browser.msie && window.XDomainRequest) {
// Use Microsoft XDR
var xdr = new XDomainRequest();
xdr.open("get", url);
xdr.onload = function() {
// XDomainRequest doesn't provide responseXml, so if you need it:
var dom = new ActiveXObject("Microsoft.XMLDOM");
dom.async = false;
dom.loadXML(xdr.responseText);
};
xdr.send();
} else {
$.ajax({...});
}
请参考以下JQUERY论坛帖子
同样的问题也出现在堆栈溢出中
问候
马赫什,
Zoho CRM