js 代码触发 upload 文件上传

  ag-grid 渲染的表格,单元格模板是一个上传按钮

js 代码触发 upload 文件上传

 

  需求是要在点击的时候增加个对话框增加些额外条件(并非全部行都加对话框)

js 代码触发 upload 文件上传

 

  于是乎,想了个解决办法,单元格模板中,增加显示对话框的标记,标记为 true 的,点击按钮时会弹出对话框,否则不变

  为了上传组件正常使用,不能用 ngIf 隐藏掉上传组件,想了办法用遮罩的形式来使对话框点击触发(a 标签遮盖在真正上传按钮上方)

js 代码触发 upload 文件上传

 js 代码触发 upload 文件上传

 

  对话框提交后需要手动触发 input 的点击,模拟用户点击事件:

js 代码触发 upload 文件上传

 

  本来想的是直接用 angular 本身的方式触发 click

js 代码触发 upload 文件上传

 

  结果界面毫无反应,断点查看,发现抛了黄色叹号:

js 代码触发 upload 文件上传

 

  查了一下,发现 upload 不支持非用户点击的动作。再次查找解决方法,最终改成了 jquery 触发:

 js 代码触发 upload 文件上传

 

  而 input 在界面中会存在多个 #inputEle,在父元素上 ngClass 一个标记,来方便寻找正确的 input 。

js 代码触发 upload 文件上传

 

上一篇:el-upload上传文件和表单一起提交+后端接收代码


下一篇:uniapp封装promise图片上传方法(ts版,js的话把参数类型去掉就行)