2017-01-27 4 views
1

In this plunk пользователь должен иметь возможность нажать на одну из трех ссылок. Каждая ссылка имеет связанный с ней номер div, который отображается, когда пользователь нажимает на ссылку. Кроме того, при щелчке ссылки его цвет становится красным.Странное поведение при использовании угловых вкладок пользовательского интерфейса

Проблема в том, что одна из ссылок (с надписью Show 10) не работает, div не отображается и текст не покраснел.

Обратите внимание, что поля в панели располагаются на вкладке «Угловой интерфейс». Если вкладка удалена (see here), проблема исчезнет. Как это исправить?

HTML (версия с закладками)

<div ng-controller="ctl"> 

     <uib-tabset style="height:500px"> 
      <uib-tab> 
      <a href="javascript:void(0)" 
        ng-style="{'color': showItem == 0 ? 'red' : 'blue' }" 
        ng-click="showItem=0" >Show 0</a> 
        <br> 
      <a href="javascript:void(0)" 
        ng-style="{'color': showItem == 10 ? 'red' : 'blue' }" 
        ng-click="displaySeries()">Show 10</a> 
        <br> 
      <a href="javascript:void(0)" 
        ng-style="{'color': showItem == 20 ? 'red' : 'blue' }" 
        ng-click="showItem=20" >Show 20</a> 
      <div ng-show="showItem==0"> 
        zero 
      </div> 
      <div ng-show="showItem==10"> 
        ten 
      </div> 
      <div ng-show="showItem==20"> 
        twenty 
      </div> 
      </uib-tab> 
     </uib-tabset> 
</div> 

Javascript (версия с закладками)

var app = angular.module('ui.bootstrap.demo', ['ui.bootstrap']); 

app.controller('ctl', function ($scope) { 
     $scope.showItem = 10; 

     $scope.displaySeries = function(){ 
      $scope.showItem = 10; 
     };  

}); 
+0

Try этот http://plnkr.co/edit/hwMVdtitZ8x1CbNgBsZ6?p=preview –

+0

работает отлично, почему вы не ответили на вопрос? – ps0604

+0

Потому что я слишком ленив, чтобы написать полное описание в своем ответе :(Но в основном вы должны использовать точечную нотацию (т.е. - Object) при использовании вкладок –

ответ

0

в этом a тег, вы пропустили вход ng-click="showItem=10" (в настоящее время у вас есть ng-click="displaySeries()")

+0

ng-click = "displaySeries()" в порядке, метод устанавливает значение showItem. Также обратите внимание, что это тот же код с вкладками и без них - и без вкладок отлично работает. – ps0604

+0

Я обновил ответ, у меня была ошибка. Теперь, см. ответ еще раз, он решает. –

+0

см. мой предыдущий комментарий – ps0604

 Смежные вопросы

  • Нет связанных вопросов^_^