使用按钮重定向到另一个页面,点击

时间:2019-04-26 08:57:20

标签: html angularjs url-redirection

当我单击按钮时,我想重定向到另一个网页。请找到以下代码

js

app.controller('myCtrl', ['$scope', '$location', function($scope, $location) {

$scope.redirect = function()
{
console.log($location.url());

};

}

我可以使用后面的$ location.url()获取当前网址

http://IP:Port/?myId=this-is-my-test-page

我想做的是我想在单击按钮时重定向到下一页

http://IP:Port/?myId=this-is-my-test-page2

我想编辑控制器内部的现有URL,而不用硬编码整个URL,因为可以更改IP和端口。我该如何实现?

尽管我使用了$location.path("http://IP:Port/?myId=this-is-my-test-page2"); 它的作用是将其追加到当前网址,如下所示:

http://IP:Port/?myId=this-is-my-test-page2#http://IP:Port/?myId=this-is-my-test-page2

如何重定向到所需页面?

3 个答案:

答案 0 :(得分:0)

我遇到了一个不太相似的问题,必须将变量转换为字符串,然后修改字符串。然后转换回正确的数据类型。

答案 1 :(得分:0)

Angular有其自己的路由。 #的所有右边都是Angular路由(客户端路由)。 #号左侧的所有内容都是MVC / WebApi路由(服务器端路由)。这是单页应用程序的本质。

如果要更改服务器端路由,则需要在服务器端进行重定向,因此向服务器发送更改URL的请求。如果要更改客户端(角度)路由,则需要在角度代码中使用“ $ location.path('')”。请注意,您不能在客户端的#号左侧更改任何内容。

您正在尝试更改网址的服务器端部分,因此您需要向服务器发出更改网址的请求。

有关这两者的更多信息,请参见this question

答案 2 :(得分:0)

我尝试使用$ window.location并成功。其他方法均无效。

app.controller('myCtrl', ['$scope', '$window', function($scope, $window) {

$scope.redirect = function()
{
$window.location = "http://IP:Port/......";

};

}