我有两个html div,每个都有一堆输入字段。我还有一个角度控制器,它可以获取输入字段中输入的数据,并检查它们是否有效(即:电子邮件,密码匹配等)。我想要做的是隐藏第一个div并在控制器说第一个div中输入的文本有效时显示第二个div。这是html的样子:
<div id = "stageOne">
<!-- whole bunch of inputs here -->
</div>
<a class = "btn" id = "stageOneDone" ng-click = "checkFields(true)">Continue</a>
<!-- First stage ends here-->
<div align = "center" id = "stageTwo" style = "display: none">
<!-- whole bunch of inputs here -->
</div>
<script>
$(function(){
$('#stageOneDone').click(function(){
//var completedIncorrectly = something
if(!completedIncorrectly){
$('#stageOne').hide();
$('#stageTwo').show();
}
})
});
</script>
函数checkFields()在检查第一个div的值时要求值为true,为第二个div检查false。我无法弄清楚如何做的是获取函数的返回值并在jquery中使用它。
编辑:如果您正在考虑为什么不使用angular显示/隐藏div,我想使用jquery的动画。答案 0 :(得分:2)
通过在控制器中编写所有jquery来解决此问题。
答案 1 :(得分:1)
您可以在控制器内部设置变量,例如$ scope.step ='one';
<div ng-show="step='one'">first step</div>
<div ng-show="step='second'">second step</div>
...
你不需要jQuery来做这件事。