X-Domain Form POST 在 Internet Explorer 9 中变为 GET
X-Domain Form POST Becomes GET in Internet Explorer 9
我正在尝试使用javascript将表单发布到我公司的另一个子域。该地址指向以编程方式生成 PDF 并将其"内联"返回的 API,以便它不会转到"下载"文件夹,而是在新选项卡中打开。
这适用于所有现代浏览器,但在 IE 9 中不起作用。经过调查,由于某些原因,我的表格以 GET(没有正文)而不是 POST 的形式提交。这是我的代码:
HTML:
<form id="pdfDownloadForm" style="display:none" method="POST" target="_blank">
</form>
Javascript:
var form = document.getElementById("pdfDownloadForm");
form.setAttribute("action", apiUrl + "download/pdf");
form.setAttribute("method", "POST");
form.setAttribute("target", "_blank");
var input = document.createElement("input");
input.setAttribute("type", "hidden");
input.setAttribute("name", "html");
input.setAttribute("value", getHtmlToConvertToPdf());
form.appendChild(input);
form.submit();
由于我使用的是jquery,我也尝试了$(form).trigger('submit')
,只是为了看看它是否有区别(它没有)。
知道为什么IE9会决定把它变成一个GET吗?这是一个旧的跨域"安全"功能,我将不得不解决,还是我缺少一些东西可以让IE9按照我想要的方式运行?
我认为这是因为 Win 7 中的 IE 安全性而发生的尝试>互联网选项的工具>互联网/本地>安全>取消选中"启用保护模式"。
相关文章:
- 视频HTML没有'无法在Internet Explorer 11上工作
- 有没有一种方法可以防止img get请求使用css或js发生
- CORS-重定向到第二个GET正在接收的页面
- Internet Explorer缺少占位符支持,特别是密码字段
- jQuery Ajax GET请求工作不正常
- 如何将PHP get查询转换为Meteor's HTTP.get()
- Internet Explorer中的文本换行错误
- 返回/从Twit's客户端.get
- AngularJS错误:提供程序必须从$get工厂方法返回值
- 如何在router.get()方法中传递url作为参数
- 为什么我在Internet Explorer上看不到html元素
- 使用Javascript/JQuery获取JSON GET数据
- 如何使用php文件中的GET来获取我在.js文件中声明的变量
- Get方法获取csv文件的内容
- 什么'$.get和$.ajax之间的区别是什么
- internet explorer 8兼容模式下的Youtube api错误
- 当浏览器控制台未打开时,为什么要求会导致Internet Explorer 9超时
- Internet Explorer 8. Events
- X-Domain Form POST 在 Internet Explorer 9 中变为 GET
- 在internet explorer中,formdata.get()方法的替代方法是什么?