角度位置搜索不适用于&

时间:2017-07-05 08:17:45

标签: javascript angularjs

/course-home#/search?q=my%20lab%20%26%20mastering&%20kamal&ref=%2Ftab%2Factive

$scope.keyword = $location.search().q;

在我的角度应用程序中,当我搜索“我的实验室和母带处理”$ location.search()。q仅返回“我的实验室”并且不返回完整的字符串。在“&”之后,它无法正常工作。从上面的URL获取查询字符串的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

创建一个replace,设置为一个符号数组。在此数组中包含& 符号,并将其添加到您的数据中。

我认为这是因为它的网址编码为%26 。查看有关URL编码的W3C备忘单,了解如何引用它们:

URL encoding cheat sheet

答案 1 :(得分:0)

发现问题,问题是网址编码没有正确完成。

$location.url('/search?q=' + searchText + '&ref=' + $location.$$path);

要解决此问题需要对searchText变量进行编码

$location.url('/search?q=' + encodeURIComponent(searchText) + '&ref=' + $location.$$path);