我有以下多选框:
<select
multiple="multiple"
data-ng-model="rightSelected"
data-ng-options="slide as slide.SlideBarcode for slide in form.Slides"
data-ng-required="form.Slides.length > 0"
/>在我的控制器中,我在初始化时这样做:
$scope.form.Slides = [];如果幻灯片数组中有幻灯片,我希望表单的此元素有效。这些是动态添加的-这是一种用户可以向其中添加幻灯片的滑动桶。
但是我不明白ngRequired是怎么工作的.如果我将其更改为data-ng-required="true",那么我的表单看起来没有问题,但它当然不会执行我想要的操作。如果我使用form.Slides.length > 0来检查我真正想要的东西,这不仅不起作用,而且会扰乱我的表单结构,我的一个元素似乎会随机消失。
使用它的正确方式是什么?在这个问题上,文档非常稀少。
发布于 2013-10-10 03:29:11
看看这篇文章:
What is the difference between required and ng-required?
从我认为您正在尝试做的事情来看,我认为您使用ng-required属性是错误的。ng-required属性适用于需要或不需要输入的情况。我猜在您的情况下,您总是希望该输入是必需的。
根据您的评论,如果您不想管理任何函数,我会将所有这些都放在一个函数中
$scope.isFormValid= function(){
if (form.Slides.length > 0 && myForm.$valid)
return true;
}然后
ng-disabled="isFormValid()"这可能不是最优雅的解决方案,但它是有效的。如果这不是你想要的让我知道。
https://stackoverflow.com/questions/19230567
复制相似问题