我正在尝试实现提交文件的系统,而不需要重新整理页面。为了做到这一点,我创建了一个带有输入(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
})
}