2014-07-21 108 views
2

我正在使用angularjs指令來重定向另一個html頁面。我正在寫入點擊函數,但我在警告框中獲取頁面名稱時未重定向到另一個html頁面。如何使用angularjs中的按鈕單擊事件將一個html頁面重定向到另一個頁面

sample.html:

<test1> 
<button data-ng-click="click('/page.html')">Click</button> 
</test1> 

sample.js:

app.directive('test1',['$location', function(location) { 
    function compile(scope, element, attributes,$location) { 
     return{ 
      post:function(scope, element, iAttrs,$location) { 
       scope.click=function(path) 
       { 
        alert("click"+path); 
        $location.path('/path'); 
       }; 
      } 
     }; 
     } 

     return({ 
      compile: compile, 
      restrict: 'AE', 
     }); 

    }]); 

我想重定向page.html中如何做到這一點請建議我。 謝謝。

回答

19

在HTML中,

<button ng-click="redirect()">Click</button> 

在JS,

$scope.redirect = function(){ 
    window.location = "#/page.html"; 
} 

希望它可以幫助.....

+0

یاشاسین....... – Farshid

7

可能會做一個小的修改。

注入$位置和使用方法:

$scope.redirect = function(){ 
    $location.url('/page.html'); 
} 

使用$位置超過了window.location的好處是可以在文檔中找到,但這裏的內容摘要(1.4.X)

https://docs.angularjs.org/guide/的$位置

enter image description here

如果有人知道如何直接從一個更清潔的方式的HTML使此重定向,請讓我知道,因爲我寧願有時在控制器上做一個功能...

1

我成功導航PAGE在AngularJS下面的代碼。

$scope.click = function() 
{ 
    window.location = "/Home/Index/"; 
} 
0

如果您正在使用材料設計按鈕'md-button',則可以這樣做。

我試着給屬性href,分配的鏈接路徑。重定向很好。

如果只是重定向,並且在重定向之前沒有其他任務要完成,則可以嘗試這種方法。

<test1> 
    <md-button href="/page.html">Click</md-button> 
</test1> 
相關問題