使用 ng-href 传递 $location.search 参数
Passing $location.search parameters using ng-href
我当前的代码中发生了一些非常奇怪的事情。
所以我正在使用 ng-repeat
创建基于对象数组的多个元素,如下所示:
<a ng-repeat="report in reports" ng-href="#/report?report={{report.id}}+file=0" ></a>
据我所知,我渲染的 HTML 看起来是这样的:
<a ng-repeat="report in reports" ng-href="#/report?report=81+file=0"
class="ng-scope" href="#/report?report=81+file=0">
如果我现在单击此 link,我将被重定向到这样的 url:
[root-url]/index.php#/report?report=84%20file%3D0
当我真的想来这里的时候:
[root-url]/index.php#/report?report=84+file=0
为什么“+
”和第二个“=
”符号在 links-href-属性中是正确的?有人有同样的问题吗?知道我做错了什么吗?
它正在被 URL 编码。它仍然具有相同的值。
目前,您只有一个键控 report
且值为 84 file=0
的参数。本例中的加号表示 space.
我假设您想要两个参数:report
和 file
。要在 URL 中拆分参数,您必须使用与符号 (&
) 而不是加号。
<a ng-repeat="report in reports" ng-href="#/report?report={{report.id}}&file=0" ></a>
我当前的代码中发生了一些非常奇怪的事情。
所以我正在使用 ng-repeat
创建基于对象数组的多个元素,如下所示:
<a ng-repeat="report in reports" ng-href="#/report?report={{report.id}}+file=0" ></a>
据我所知,我渲染的 HTML 看起来是这样的:
<a ng-repeat="report in reports" ng-href="#/report?report=81+file=0"
class="ng-scope" href="#/report?report=81+file=0">
如果我现在单击此 link,我将被重定向到这样的 url:
[root-url]/index.php#/report?report=84%20file%3D0
当我真的想来这里的时候:
[root-url]/index.php#/report?report=84+file=0
为什么“+
”和第二个“=
”符号在 links-href-属性中是正确的?有人有同样的问题吗?知道我做错了什么吗?
它正在被 URL 编码。它仍然具有相同的值。
目前,您只有一个键控 report
且值为 84 file=0
的参数。本例中的加号表示 space.
我假设您想要两个参数:report
和 file
。要在 URL 中拆分参数,您必须使用与符号 (&
) 而不是加号。
<a ng-repeat="report in reports" ng-href="#/report?report={{report.id}}&file=0" ></a>