2016-06-16 2 views
0

Ich bin auf der Suche nach der 'ng-href' URL auf Scope-Wert von Controller.Initially auf Seite laden URL ist in Ordnung eingefügt. Aber dann , wenn ich ändern, den Umfang, dass URL

aktualisiert werden sollte
<a ng-href=={{selectedValue}} /a> 

//in my controller 
$scope.selectedValue = "www.google.com" 

//need to update this url in this function 
otherButtonFn = function(){ 
//want to Update the url here 
$scope.selectedValue = "www.yahoo.com" 
} 

//ng-href is loading initial url but not updating when $scope is called 
    <a ng-href=="www.google.com" href=""www.google.com" /a> 

Hier möchte ich die URL aktualisieren mit „www.yahoo.com“, wenn die Funktion aufgerufen wird.

+0

schließen Sie Ihren Anker-Tag korrekt wie '' Test

+0

Danke, aber ich bin mit Rahmen statt $ rootscope – rUI

Antwort

0

angular.module('myApp',[]) 
 
.controller('TestCtrl', function($scope){ 
 
    $scope.something = "somewhere"; 
 
    $scope.changeSomething = function(){ 
 
    $scope.something = "somewhere else"; 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script> 
 
<div ng-app="myApp"> 
 
    <div ng-controller="TestCtrl"> 
 
    <a ng-href="{{something}}">{{something}}</a> 
 
    <button ng-click="changeSomething()">Change</button> 
 
    </div> 
 
</div>

Nicht in der Lage, das Problem zu reproduzieren, wie angegeben.

+0

Sache ist, dass Button in anderer Vorlage ist. Obwohl es den gleichen Controller verwendet – rUI

+0

machte ich einen dummen Fehler, ich habe $ rootscope für den globalen Umfang verwendet und es funktioniert. Danke gedacht – rUI

1

Das Problem ist mit dem Anker-Tag, das doppelte == und kein "" um es herum hat. Bitte aktualisiert Beispiel siehe unten:

<a ng-href="{{selectedValue}}">Link Name</a> 

$scope.selectedValue = "www.google.com"; 


$scope.otherButtonFn = function(){ 
    $scope.selectedValue = "www.yahoo.com"; 
} 
Verwandte Themen