手风琴angularJS内的表格验证

时间:2015-03-19 12:40:07

标签: angularjs validation accordion angular-bootstrap

我有一个有3组的手风琴(棱角自举)。在第二组中,有一个表格可以很好地验证(必填和电子邮件字段)。

在第三组中,有一个摘要,由表格数据构建。或者,当表单上的内容无效时,必须有其他错误消息。

由于指令结构,每个手风琴组都拥有它自己的孤立范围。 我如何在不同的手风琴组之间(甚至在手风琴之外)分享表格。$ valid(或其他属性)。

这是我的html(缩写):

<accordion close-others="true" id="checkoutsteps">
                <accordion-group is-open="menuStatus[0].isOpen">
                   [...]
                </accordion-group>
                <accordion-group is-open="menuStatus[1].isOpen">
                    <accordion-heading>
                        <div class="number">2</div>
                        {{bid.name}}
                    </accordion-heading>

                    <div class="step-content"> 
                       <form name="frmOffer">[...]</form>
                    </div>
                </accordion-group>
                <accordion-group is-open="menuStatus[1].isOpen">
                    <accordion-heading>
                        <div class="number">3</div>
                        Summary
                    </accordion-heading>

                    <div class="step-content"> 
                        <div ng-show="frmOffer.$valid"></div> <-- THIS DOES NOT WORK
                    </div>
                </accordion-group>

1 个答案:

答案 0 :(得分:1)

解决方案是在控制器中定义一个类似

的新对象
$scope.formObj={}

然后,在该元素中命名您的表单:

name="formObj.frmOffer">

当然,你必须到处使用那个对象。

<div ng-show="formObj.frmOffer.$valid"></div>