2016-04-19 8 views
1

type=1の場合は、URLに変数{{vm.firstPath}}を使用します。 それ以外の場合は{{vm.secondPath}}を使用してください。AngularJSでhrefを指定して3進数を使用する

これは3進数を使用していますか?

私はこれをやってみました場合は、それが認識されない:

{{type==1? <a href="{{vm.firstPath}}">{{vm.name}}</a> : <a href="{{vm.secondPath}}">{{vm.name}}</a>}} 

答えて

3

のようなコードを変更する必要がありng-この目的のためにhref istead of href。

<a ng-href="type == 1 ? 'http://www.google.com' : 'http://www.facebook.com'">Link</a> 

var app = angular.module('foo', []) 


app.controller('main', function($scope){ 

    $scope.type = 1; 

}) 

JsFiddle:あなたはNG-場合ディレクティブを使用することができますhttp://jsfiddle.net/nikdtu/b910258t/

-1

は、あなたが使用する必要がありますthis-

<a href="{{type==1?vm.firstPath:vm.secondPath}}">{{vm.name}}</a> 

OR-

<a href="{{vm.firstPath}}" ng-if="type==1">{{vm.name}}</a> 
<a href="{{vm.secondPath}}" ng-if="type!=1">{{vm.name}}</a> 
+0

これはうまくいかない場合があります。 hrefとng-hrefの詳細については、@ https://docs.angularjs.org/api/ng/directive/ngHref –

+0

をご覧ください。@ NikhilMaheshwariはどのケースで動作しないのか教えてください。 –

+0

上記のコメントに貼り付けたリンクを読んでください。 –

1

<a ng-if="type==1" ng-href="{{vm.firstPath}}">{{vm.name}}</a> 
    <a ng-if="type !=1" ng-href="{{vm.secondPath}}">{{vm.name}}</a> 
関連する問題