Tom*_*han 149 javascript jquery serialization query-string
我正在尝试查找有关如何序列化对象以查询字符串格式的信息,但我的所有搜索都在结果中淹没了如何以其他方式(字符串/表单/任何JSON).
我有
{ one: 'first', two: 'second' }
Run Code Online (Sandbox Code Playgroud)
而且我要
?one=first&two=second
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?我不介意插件或其他东西 - 如果我发现的代码不是插件,我可能会重新写一个...
Chr*_*nte 229
你想要$.param():http://api.jquery.com/jQuery.param/
具体来说,你想要这个:
var data = { one: 'first', two: 'second' };
var result = $.param(data);
Run Code Online (Sandbox Code Playgroud)
给出这样的东西:
{a: 1, b : 23, c : "te!@#st"}
Run Code Online (Sandbox Code Playgroud)
$.param 将返回此:
a=1&b=23&c=te!%40%23st
Run Code Online (Sandbox Code Playgroud)
Ric*_*ith 66
对于快速的非JQuery函数...
function jsonToQueryString(json) {
return '?' +
Object.keys(json).map(function(key) {
return encodeURIComponent(key) + '=' +
encodeURIComponent(json[key]);
}).join('&');
}
Run Code Online (Sandbox Code Playgroud)
请注意,这不处理数组或嵌套对象.