使用location跳转须要先转义

对于那些根据用户输入内容作跳转,须要先把用户内容作转义,以下有问题的代码:javascript

let searchContent = form.search.value.trim();
window.location.href = `/search?key=${searchContent}`;

若是用户输入了一个#号如门牌号,将会致使#后面的内容看成锚点了,或者用户可能会输入一个空格。因此若是不肯定内容的东西须要先encode一下,以下代码:java

let searchContent = encodeURIComponent(form.search.value.trim());
window.location.href = `/search?key=${searchContent}`;
相关文章
相关标签/搜索