如何检查文件输入是否为空角?

时间:2016-05-18 08:50:31

标签: html angularjs

在标题中,如何检查文件输入是否为空?并将结果绑定到$ scope。

2 个答案:

答案 0 :(得分:0)

这个问题已经结束,答案是错误的,所以为了帮助别人……你可以利用 ngModel。例如,要上传徽标图像并检查其大小,我会这样做:

HTML:

<input type="file" class="form-control" accept="image/png,image/jpeg" (change)="onFileChanged($event)"[(ngModel)]="weblogohasfile" >

TS 检查是否有文件被选中:

if (!this.weblogohasfile) {
      alert("No file");
      return;}

}

检查徽标大小并将文件分配给可变的博客

onFileChanged(event) {
    this.weblogo = event.target.files[0];
    if (this.weblogo) {
      if (this.weblogo.size > 200000) {
        alert("too big or something");
        return;
      }
    }
  }

将徽标上传到服务器(取决于您的 API 提供商规范)

var APIURL = "www.yourwebsite.com/apis/uploadlogoservice";   
    let options = { headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded') };
    let formData = new FormData();
    formData.append("credentials", "some credentials");
    formData.append("myfile", this.weblogo, this.weblogo.name);
    this._httpClient.post(APIURL, formData).subscribe(
      result => { .........

答案 1 :(得分:-2)

原则上你不能,因为文件上传比这更复杂。

为了触发和上传文件,您必须使用与简单的AJAX JSON请求不同的多部分请求。

当然,由于angularJS是一个非常流行的框架,你有一个插件:https://github.com/danialfarid/ng-file-upload。你会发现你需要的一切:

  1. 如何上传文件
  2. 如何限制文件(内容类型,重量......)。
  3. 它甚至显示了一些关于如何在服务器端处理Spring / Rails / NodeJS / PHP的用例,......