我已经问过这个但是没有达到以下目的。我正在尝试让Angular与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的toggleThis可见性相关联。单击button1时,应将view2中的文本设置为可见,同时正常执行其他功能。
Q1:我如何设置它以便在点击button1时设置toggleThis从隐藏到可见?
Q2:如何设置toggleThis最初被隐藏?
问题3:我应该在哪个Typescript文件中放置函数?
答案 0 :(得分:1)
如果我有你的问题:
HTML:
<a class="Button1" data-ng-click=minorTask()>Click</a>
的CSS:
.toggleThis{.....; display: none;} //Saying toggleThis is initialized has Hidden
myViewController:
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');
}
}})
为了获得切换,您必须在Css中设置.toggleThis {display:none;}。
在我看来,你应该把你的功能放到你的控制器中。看看这个example,我使用了一些jquery。 我希望我一直很有帮助。