Не удалось открыть модальное всплывающее окно при каждом щелчке мышью с помощью Angular.js - PullRequest
1 голос
/ 05 июня 2019

Мне нужно открыть модальное всплывающее окно, в то время как пользователь нажимает кнопку uaing Angular.js, но при ее открытии первый раз, и когда закрывается, модальное нажатие снова, чтобы открыть его не открывающееся. В общем, это всплывающее окно открывается каждые два раза, нажимая на интервал между кнопками.

Проверьте мой следующий код, что я пробовал до сих пор.

<td>
  <a ui-sref='app.ownerinfo.owner.vew'>
    <input type='button' class='btn btn-xs btn-green'
           value='Edit' ng-click="editOwnerData(usr.owner_id);">
  </a>
</td>

<modal title="Owner Information" visible="showModalOwner">
    <p>MOdal Window</p>
</modal>
$scope.editOwnerData=function(owner_id){
    $scope.showModalOwner = !$scope.showModalOwner;
}
dashboard.directive('modal', function () {
    return {
      template: '<div class="modal fade">' + 
          '<div class="modal-dialog modal-lg">' + 
            '<div class="modal-content">' + 
              '<div class="modal-header">' + 
                '<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>' + 
                '<h4 class="modal-title">{{ title }}</h4>' + 
              '</div>' + 
              '<div class="modal-body" ng-transclude></div>' + 
            '</div>' + 
          '</div>' + 
        '</div>',
      restrict: 'E',
      transclude: true,
      replace:true,
      scope:false,
      link: function postLink(scope, element, attrs) {
        scope.title = attrs.title;

        scope.$watch(attrs.visible, function(value){
          if(value == true)
            $(element).modal('show');
          else
            $(element).modal('hide');
        });

        $(element).on('shown.bs.modal', function(){
          scope.$apply(function(){
            scope.$parent[attrs.visible] = true;
          });
        });

        $(element).on('hidden.bs.modal', function(){
          scope.$apply(function(){
            scope.$parent[attrs.visible] = false;
          });
        });
      }
    };
  });

Здесь мне нужно при каждом нажатии кнопки всплывающее окно должно открываться там, где теперь его открытие после нажатия 2 раза.

...