繁体   English   中英

附加到查询字符串JavaScript

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM