Jquery 获取函数以跨控制器侦听

Jquery 获取函数以跨控制器侦听,jquery,angularjs,model-view-controller,toggle,Jquery,Angularjs,Model View Controller,Toggle,我已经问过了,但还没有做到以下几点。我试图通过MVC中的控制器来控制段落的可见/隐藏。我使用的是Typescript,不是Javascript 我有两个控制器和两个视图,view1.cshtml/view1.ts和view2.cshmtl/view2.ts 在view1.cshtml中,我有一个按钮: <a class="Button" id="button1" data-ng-click="minorTask(); toggle()">Click</a> 点击

我已经问过了,但还没有做到以下几点。我试图通过MVC中的控制器来控制段落的可见/隐藏。我使用的是Typescript,不是Javascript

我有两个控制器和两个视图,view1.cshtml/view1.ts和view2.cshmtl/view2.ts

在view1.cshtml中,我有一个按钮:

  <a class="Button" id="button1" data-ng-click="minorTask(); toggle()">Click</a>
点击
我在toggle()中添加了一个函数,用于在view2.cshmtl中显示段落

view2.cshtml中的div:

 <div id="toggleThis">
  <p>Some text<p>
 <div>

一些文本
我希望view1中的按钮与切换view2中的此可见性绑定。单击按钮1时,应将view2中的文本设置为可见,同时正常执行其他功能

问题1:我如何设置它,以便在单击按钮1时将其设置为从隐藏切换为可见

问题2:如何将toggleThis设置为初始隐藏


问题3:我应该将函数放在哪个Typescript文件中?如果我收到您的问题:

  • A1:
Html:

myViewController:

  • A2:
为了使toggleThis初始隐藏,您必须在Css中设置.toggleThis{display:none;}

  • A3:
在我看来,你应该把你的功能放进你的控制器中,就像以前展示的那样。看看这个,我使用了一些jquery。
我希望我能帮上忙。

只有在控制器中使用factory/service或inject controller服务,才能实现这一点。您在第一个控制器的作用域中有一个变量,并且希望在第二个控制器中访问它。你应该看到我是angular的新手,不明白我应该把$controller指令放在哪里。我需要把它同时放在这个和按钮1中吗?谢谢你的帮助!我将努力实施它。
<a class="Button1" data-ng-click=minorTask()>Click</a>
.toggleThis{.....; display: none;} //Saying toggleThis is initialized has Hidden
myApp.controller("myController", ["$scope", function($scope){
  $scope.minorTask = function(){ //triggers when called by button1 being clicked

     //change toggleThis from hidden to block
     angular.element('toggleThis').css('display','block');
  }
}})