[英]Append to Query String JavaScript
当我尝试将ID附加到查询字符串的末尾时,JS会在查询字符串中添加不必要的与号和'='符号。
我正在尝试这样的事情:
http:// sample_site / report / file / list?f%5B%5D = 1111
但是我在控制台中查看结果时得到了这个:
http:// sample_site / report / file / list?f%5B%5D =&f = 1111
这是我的JS函数,用于构建URL对象:
buildTileFilter(){
let url = new URL('http://sample_site/report/file/list?f%5B%5D');
let query_string = url.search;
let search_params = new URLSearchParams(query_string);
search_params.set('f', 1111);
url.search = search_params.toString();
let new_url = url.toString();
return new_url;
}
“%5B%5D”部分被视为参数名称的一部分。 您必须将其添加到要设置的参数名称中才能获得所需的结果。 这是字符串“ []”的编码值,因此要获得结果,代码应为:
buildTileFilter(){
let url = new URL('http://sample_site/report/file/list?f%5B%5D');
let query_string = url.search;
let search_params = new URLSearchParams(query_string);
search_params.set('f[]', 1111);
url.search = search_params.toString();
let new_url = url.toString();
return new_url;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.