IE8 使用 jquery form plugin 进行上传图片 取不到返回值
项目中使用 formData
来进行上传图片的操作。 但是 formData
只能在 IE9
之上工作, IE8
是不被支持的。
找了解决的方式, 使用 jquery-form-plugin
插件来通过 <iframe>
的方式来进行上传图片。
但是使用过程中, 后台 java
程序有了响应, 并且返回了 <textarea>{fileUrl: xxx.com}</textarea>
这种格式的值。 后台的 content-type
也更改成了 text/html
。
现在的问题是: success
回调函数中的返回值有问题。 它总是返回当前页面内而不是 iframe
当中的 <textarea>
的值, 所以总是为空。 而且, <iframe>
中也不包含后台传过来的返回值。
各位大侠 这个地方是哪里出了问题。。 还需要设置一些其他的地方吗。。。
$('#form').ajaxSubmit({
url: url,
type: 'POST',
dataType: 'text',
success: function (response, status, xhr) {
console.log(223);
console.log(xhr);
},
error: function () {
console.log(333);
}
});
补充一下, 发现自动生成的 <iframe>
是没有 name
属性。导致 <iframe>
中内容为空。
如果指定带 name
的 <iframe>
里面确实会将返回 <textarea>
加入到 <iframe>
但是,只有一瞬的时间然后就被清掉, <iframe>
里又什么都没有了。。。。。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我遇到了类似问题,返回值为当前页的html。参考https://github.com/jquery-for...,让后端在返回值的response中将X-Frame-Options设为sameorigin,解决了。
请问下问题解决了吗?