我正在为Facebook Feed Dialog设置一个URL的格式。尽管有很多参数。我想有这些对话框的功能,如:将JSON键值对象转换为查询字符串的JavaScript函数
function generateDialogUrl(dialog, params) {
base = "http://www.facebook.com/dialog/" + dialog + "?";
tail = [];
for (var p in params) {
if (params.hasOwnProperty(p)) {
tail.push(p + "=" + escape(params[p]));
}
}
return base + tail.join("&")
}
哦哇......我想我只是回答了我自己的问题。是对的吗?是escape()
正确的功能使用?
我被困在Lovers source code。
更新:因为我们使用的是jQuery,所以我使用jQuery.each
重写了该方法。根据@galambalazs & @ T.J的建议,我也将escape()
替换为encodeURIComponent()
。克劳德。多谢你们!
var generateDialogUrl = function (dialog, params) {
base = "http://www.facebook.com/dialog/" + dialog + "?";
tail = [];
$.each(params, function(key, value) {
tail.push(key + "=" + encodeURIComponent(value));
})
return base + tail.join("&");
}
它的工作!
您可以接受的答案,如果它解决您的问题。 :) – galambalazs 2011-05-26 14:01:55
另外,答案不应放在问题主体中;相反,所有者应该回答它自己的问题并标记为已接受。 – igorsantos07 2012-11-23 20:12:15