Javascript 在页面中单击按钮时,将视图从一个页面切换到另一个页面

Javascript 在页面中单击按钮时,将视图从一个页面切换到另一个页面,javascript,jquery,angularjs,redirect,Javascript,Jquery,Angularjs,Redirect,我是angular JS的新手。单击按钮时如何重定向到另一个页面。 我的代码在这里 var app = angular.module("plunker", []) .config(function ($routeProvider, $locationProvider, $httpProvider) { $routeProvider.when('/home', { templateUrl: 'home.html', controller: 'HomeCtrl' }); $r

我是angular JS的新手。单击按钮时如何重定向到另一个页面。 我的代码在这里

var app = angular.module("plunker", [])
.config(function ($routeProvider, $locationProvider, $httpProvider) {

$routeProvider.when('/home',
{
  templateUrl:    'home.html',
  controller:     'HomeCtrl'
});
$routeProvider.when('/about',
{
  templateUrl:    'about.html',
  controller:     'AboutCtrl'
});
$routeProvider.when('/contact',
{
  templateUrl:    'contact.html',
  controller:     'ContactCtrl'
});
$routeProvider.otherwise(
{
  redirectTo:     '/home',
  controller:     'HomeCtrl', 
}
)); });

//单击按钮时重定向 函数Cntrl($scope,$location){ $scope.redirect=函数(){ window.location.href='/about'; } }

}))

app.controller('ContactCtrl',函数($scope,$compile){ console.log(“内部联系人控制器”)

}))

我的html标记是

<div ng-controller="Cntrl">
    <button class="btn btn-success" ng-click="changeView('about')">Click Me</button>
</div>

点击我
您输入:


如何获取此信息。请帮助我解决此问题。

只需使用标准的HTML链接:

<div ng-controller="Cntrl">
    <a class="btn btn-success" ng-href="#/about">Click Me</a>        
</div>

无需为此创建范围函数。由于以下原因,您还可以动态处理该问题:



最后一件事,你应该考虑使用哪种句柄更好的这种情况

为什么你需要将视图作为参数发送:

试试这个:

$scope.changeView = function() {
            $location.path(#/about); 
        }

若Cétia提出的解决方案不起作用,那个么您可能并没有定义路由。确保使用ing app.js定义了路线,如下所示:

  app.config(['$routeProvider', function ($routeProvider) {
        $routeProvider
            .when('/Login', {
                templateUrl: 'Navigate/LoginView',
                controller: 'someLoginController'
            })

]);
您也可以使用angulars state provider(进行一些研究),从state provider可以访问html中的路由,如下所示:

<a href="state.routName" />

是的,这只是angular的工作方式,您在某个地方遇到了另一个问题,请查看我给您的ng href doc链接。
  app.config(['$routeProvider', function ($routeProvider) {
        $routeProvider
            .when('/Login', {
                templateUrl: 'Navigate/LoginView',
                controller: 'someLoginController'
            })

]);
<a href="state.routName" />