IE9"没有传输"错误,Firefox/Chrome工作,并且请求不是跨站点

Tom*_*man 8 ajax jquery internet-explorer

我正在制作一个标准的JQuery .ajax调用,已经跳过了箍以使其在其他浏览器中运行但现在我只是停留在IE9上(而且更低,我确定).页面canada.example.com/registration包含一个注册表单,使用JQuery的.ajax提交:

jQuery.ajax({
    url: 'http://canada.example.com/registration.php',
    type: 'POST'
});
Run Code Online (Sandbox Code Playgroud)

请注意,POST请求是http://canada.example.com/registration.php,因此我不会发出跨站点请求.

这现在可以在Firefox和Chrome中使用,但IE9会返回"无传输"错误,就像它没有尝试发出请求一样.有想法该怎么解决这个吗?我已经花了一些力气尝试使这不是一个跨源请求,但IE 9似乎仍然认为它是.

Tom*_*man 7

固定它.我传递了完全限定的URL,即canada.example.com/registration.php,而不仅仅是registration.php,并且跨域标志设置为yes.我删除了完全质量的名称,因此它只是发送到"registration.php"并将跨域标志设置为NO并且它可以正常工作.

jQuery.ajax({
    url: '/registration.php',
    type: 'POST',
    crossDomain: false
});
Run Code Online (Sandbox Code Playgroud)