【问题标题】:What's the alternative for formdata.get() method in internet explorer?Internet Explorer 中 formdata.get() 方法的替代方法是什么?
【发布时间】:2017-03-01 00:27:56
【问题描述】:
var formData = new FormData();
formData.append('username', 'Chris');
formData.append('username', 'Bob');
formData.get('username');

Internet explorer 不支持get 方法,那么如何在Internet Explorer 中检索username?

【问题讨论】:

标签: javascript jquery internet-explorer browser-cache form-data


【解决方案1】:

您需要自己跟踪要添加的值,或者您可以使用具有所有方法的可靠polyfill

然后,如果您想将其转换为本机,您只需遍历条目并将其附加到本机 formData

这在 IE 中不起作用:

有些选项是entries(), getAll(), keys(), values(),但它们都不起作用,因为附加是 IE 唯一能做的...

检索它的其他选项是使用Array.from(formdata) 或更简单的版本[...formdata],但这需要条目(又名迭代器)

还有另一种解决方案可以获取所有字段,而无需通过任何方式从 formData 中获取。那就是通过使用fetch,您可以将formData 转换为blob、arrayBuffer 或文本

new Response(formdata).text().then(console.log)

但问题是 IE 不支持fetch

【讨论】:

  • 我不认为Array.from(FormData) 可以在任何缺少FormData.get 的浏览器上工作。
  • @12Me21 不,IE11 不支持 Array.from。
猜你喜欢
  • 1970-01-01
  • 2022-11-13
  • 2010-10-12
  • 1970-01-01
  • 2020-01-25
  • 1970-01-01
  • 2010-12-14
  • 2015-01-04
  • 1970-01-01
相关资源
最近更新 更多