IE在iframe中提交表单时的奇怪行为

IE strange behaviour while submitting a form in an iframe

本文关键字:表单 iframe 提交 IE      更新时间:2023-09-26

我正在尝试实现系统提交文件没有完整的页面重新呈现。为了做到这一点,我创建了一个表单输入(type = file)在它和动态iframe创建/追加机制。在创建并追加iFrame之后,我在iFrame上设置表单的target属性。

在其他浏览器中,这个机制工作得很好,但是IE建议我像保存文件一样保存输入数据,而不是将内容加载到iFrame中。我的逻辑中有什么错误?也许这是动态创建iFrame的问题,或者我的IE配置有问题?

来源:

createIFrame: function(appendToSelector) {
  var nameWthId = "uploadTarget" + (new Date().getTime());
  var iFrame = $("<iframe style='display:none;'></iframe>");
  iFrame.attr('id', nameWthId);
  iFrame.attr('name', nameWthId);
  iFrame.appendTo(appendToSelector);
  return nameWthId;
}
fileUploadManual: function(dom) {
  var iFrameName = context.createIFrame(dom + " .manual-upload-file");
  $(dom + " .fileUploadForm")[0].target = iFrameName;
  $(dom + " .fileUploadForm")[0].action = config.post;
  $(dom + " #" + iFrameName).load(function(ev) {
    //some logic
  })
}

和这个问题差不多

您必须为您的响应返回"text/html" mime类型。