我有一段使用XHR将数据发布到网址的Javascript代码,但它使用的是FormData,早期版本的Chrome不支持。这非常方便,但我希望它是向后兼容的,那么重写makeFormData方法以返回准备发送的数据的最佳方法是什么?
违规代码在这里:
http://bitbucket.org/piranha/historious.crx/src/tip/background.html#cl-86
谢谢!
答案 0 :(得分:1)
编辑:您可以覆盖FormData
以创建像这样的编码POST字符串...
function FormData() {
var obj = {}
this.append = function(key, val) {
obj[key] = val;
}
this.toString = function() {
var s = "";
for(var k in obj) {
s += ((s.length == 0) ? "?" : "&");
s += k;
s += "=";
s += encodeURIComponent(obj[k]); // might want to use escape() instead
}
return s;
}
}