javascript - 如何以 angularjs 形式添加数组大小验证规则?

标签 javascript forms angularjs validation angularjs-directive

我有一个表单,其中包含一些文本输入字段和存储在 Controller $scope 中的动态项目列表,以及一些用于添加/删除列表中项目的函数。 我想使表单无效,直到项目列表达到预定义的长度。

所以我创建了一个 formRepeat 指令,它带有一个 ngModel 属性,然后使用 ngModelController 使表单无效。

http://plnkr.co/edit/jSFvak?p=preview

这可行,但我认为这不是更好的方法,因为该指令不是很灵活。

最简单的方法是使 Controller 中的表单无效,例如:

$scope.myForm.$valid = false;

但这行不通。

有没有更好的办法?

最佳答案

对我来说最简单的方法是将数组的长度作为隐藏数字 input 并对其进行 min 验证。事实上,非常干净的解决方案。

<input style="display: none;" type="number" name="itemsCount" ng-model="items.length" min="{{min}}">

查看 updated plunker

关于javascript - 如何以 angularjs 形式添加数组大小验证规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22176472/

相关文章:

javascript - 将客户端功能添加到表中

javascript - 如何识别HandleErrorAttribute OnException中的javascript fetch()?

html - 为什么 "&lt;input&gt;"元素不发布数据?

javascript - PHP Ajax 提交表单返回数据

javascript - 为什么在 AngularJS 中定义 Controller 时不使用显式注解?

javascript - 为什么 js 变量显示 [object object] 但 console.log() 有效?

javascript - TikTok 嵌入式视频不断消失

Django 在表单中设置初始数据

javascript - Angular - 下载并显示 PDF

javascript - 如何确定回调函数的参数列表