如何切换生活在同一范围内的表单?

时间:2015-09-07 11:25:44

标签: javascript angularjs angularjs-directive

我对我的情况感到有点困惑,基本上我需要点击按钮来切换表单,而无需切换页面上的所有表单。

如果我有这样的结构:

<ul>
    <li ng-repeat="item in cart"> 
        ... lots of elements ... 
        <button data-toggle data-target="myForm">Toggle form</button>
        ... some container ...
            <!-- deep nested form -->
            <form class="myForm"></form>
    </li>
</ul>

这条指令:

core.directive('toggle', [function() {
    return {
        restrict: 'A',
        link: function($scope, element, attrs) {

            element.on('click', function() {
                $('.' + attrs.target).stop().slideToggle(100);
            });
        }
    }
}]);

如何使按钮不会切换每个重复元素中的每个表单?我不知何故需要从按钮所在的li开始然后切换表单,但究竟我该如何以有效的方式做到这一点?我正在考虑将一个孤立的范围传递给指令,然后使用它以某种方式遍历DOM结构并切换表单,但感觉这甚至不可能?

我该怎么做才能解决我的问题?

0 个答案:

没有答案