我用 Jquery 读取输入中的文件
<INPUT TYPE=FILE id="file" NAME="upfile" multiple>
使用此代码
$('#inputFile').on('change', 'body', (e) => {
var files: any = e.currentTarget.files; });
但是打字稿不知道 e.currentTarget 在这种情况下具有 poperty 文件。并给我一个编译错误。
我该如何解决这个问题?
提前致谢
我用 Jquery 读取输入中的文件
<INPUT TYPE=FILE id="file" NAME="upfile" multiple>
使用此代码
$('#inputFile').on('change', 'body', (e) => {
var files: any = e.currentTarget.files; });
但是打字稿不知道 e.currentTarget 在这种情况下具有 poperty 文件。并给我一个编译错误。
我该如何解决这个问题?
提前致谢
$('#input-container').on('change', null, (e) => {
var input = <HTMLInputElement>e.target;
var files = input.files; //give you intellisense on files
});
jQuery.On有不同的两个重载(1.8 版)。您使用了错误的重载方法。使用正确的
如果您没有任何要传递的数据,请将您的代码更改为
$('#inputFile').on('change', 'body', null, (e) => {
var files: any = e.currentTarget.files; });
类似于@michael-tranchida,但我认为更简洁:
export class Page {
public fileToUpload:File = null;
constructor(public fileInput: JQuery, public fileDetails: JQuery) {
$(fileInput).on('change', (e) => {
this.fileToUpload = <File>$(e.target).prop('files')[0];
$(fileDetails).html(this.fileToUpload.name); // intellisense on fileToUpload
});
}
}