AngularJS强制输入type = file在编辑模型时有效

时间:2014-01-10 15:44:30

标签: javascript validation angularjs

我正在尝试为包含文件的域实体组合CRUD设置。在前端我有一个type = file的输入,如下所示:

<input type="file" name="file" ng-model="template.file" required />

正如您所看到的,这与我的模型有关。

创建部分运行良好,因为此时需要添加文件,因此满足文件输入所需的验证。然而,当编辑时,用户可能永远不会更改文件,但因为它是文件输入而我找不到重新填充它的方法,所需的文件输入字段永远不会通过验证。

我想到的一种方法是强制文件输入字段在加载时有效,因此问题标题(不确定如何做到这一点)但我意识到这可能不适合Angular的原理。 / p>

有没有可靠的方法,最好采用“角度方式”来做到这一点?

2 个答案:

答案 0 :(得分:1)

您可以使用ng-required directive

 <input type="file" name="file" ng-model="template.file" ng-required="!template.file" />

here

的另一个答案

答案 1 :(得分:0)

您可以通过为表单添加名称来将其设置为有效。然后你就可以在控制器中做到:

    $scope.myform.file.setValidity(true);