Angular 文件上传JS
Angular JS ng file upload
我在我正在处理的项目中使用 Angular 的 JS 众所周知的 ng 文件上传指令 (https://github.com/danialfarid/ng-file-upload),但我遇到了验证方面的问题。我添加了 ngf-pattern 指令,以防止用户上传某些文件格式。这很好用,每个无效文件都在 $invalidFiles 数组中可用。无论如何要清除这个数组?
我正在使用 $invalidFiles 数组来检测何时使用了无效文件,并提醒用户。该文件没有显示在 UI 中,也没有添加到我的模型中,但我仍然无法提交表单,因为表单无效。只有在添加有效文件后,我才能提交表单。有没有办法检测无效文件但仍然能够提交表单?
希望我说清楚了..谢谢!
这是您需要的吗:JsFiddle
$scope.submit = function() {
alert('form is ready');
}
可能您真正需要的是 ngf-change
而不是 ngf-select
。根据文档,只要您 select、删除或清除,您分配给 ngf-change 指令的处理函数就会被调用。
如果您唯一想要实现的是允许表单提交,无论它是有效还是无效,可以在 ng-model-options
上使用另一种方法。有一个名为 allowInvalid
的选项,默认情况下它是 false
,将其设置为 true
即可。
所以在你的例子中:
<button name="bla" multiple accept="image/*"
ngf-keep="true"
ng-model="myFiles"
ngf-pattern="'image/*'"
ngf-max-size="1MB"
ngf-change="handleFiles($files, $invalidFiles)"
ngf-model-options="{allowInvalid: true}">
Select Files
</button>
请注意我们在此处更改的最后两个指令。
如需完整参考,您可以查看Full reference - File select and drop
部分的官方文档
我在我正在处理的项目中使用 Angular 的 JS 众所周知的 ng 文件上传指令 (https://github.com/danialfarid/ng-file-upload),但我遇到了验证方面的问题。我添加了 ngf-pattern 指令,以防止用户上传某些文件格式。这很好用,每个无效文件都在 $invalidFiles 数组中可用。无论如何要清除这个数组?
我正在使用 $invalidFiles 数组来检测何时使用了无效文件,并提醒用户。该文件没有显示在 UI 中,也没有添加到我的模型中,但我仍然无法提交表单,因为表单无效。只有在添加有效文件后,我才能提交表单。有没有办法检测无效文件但仍然能够提交表单?
希望我说清楚了..谢谢!
这是您需要的吗:JsFiddle
$scope.submit = function() {
alert('form is ready');
}
可能您真正需要的是 ngf-change
而不是 ngf-select
。根据文档,只要您 select、删除或清除,您分配给 ngf-change 指令的处理函数就会被调用。
如果您唯一想要实现的是允许表单提交,无论它是有效还是无效,可以在 ng-model-options
上使用另一种方法。有一个名为 allowInvalid
的选项,默认情况下它是 false
,将其设置为 true
即可。
所以在你的例子中:
<button name="bla" multiple accept="image/*"
ngf-keep="true"
ng-model="myFiles"
ngf-pattern="'image/*'"
ngf-max-size="1MB"
ngf-change="handleFiles($files, $invalidFiles)"
ngf-model-options="{allowInvalid: true}">
Select Files
</button>
请注意我们在此处更改的最后两个指令。
如需完整参考,您可以查看Full reference - File select and drop
部分的官方文档