layui版本号:v2.5.5
我想要在上传文件之前判断这个资源属性属于哪种,如果不是正确的资源属性那么就终止上传。
第一步:
首先before终止上传按理来说直接return false 就可以了,但是直接写并不管用,还是会去上传,查了一下很多人都说改源码:
找upload.js文件到下列代码:
1
y = function() {
if ("choose" !== t && !l.auto || (l.choose && l.choose(g), "choose" !== t)) return l.before && l.before(g),
a.ie ? a.ie > 9 ? u() : c() : void u()
};
用下列代码替换大括号中的代码:
return "choose" === t ? l.choose && l.choose(g) : ((l.before && l.before(g)) === false ? '' : a.ie ? a.ie > 9 ? u() : c() : void u())
但是,我这边实践时,choose 回调失效了,项目需求需要 choose 后重新在自定义位置展示上传文件名
解决办法是 修改如下
y = function() {
if ("choose" !== t && !l.auto || (l.choose && l.choose(g), "choose" !== t)) return (l.before && l.before(g))===false?'':a.ie ? a.ie > 9 ? u() : c() : void u()
};
然后在 before 中相应逻辑中 return false 就行啦
在layui版本v2.5.5中,通过before事件阻止上传需要正确处理。通常return false无法直接阻止,一种解决方法是修改upload.js源码,但会导致choose回调失效。为保持choose功能,可以修改特定代码段并在before事件中根据逻辑返回false来终止上传。
1万+

被折叠的 条评论
为什么被折叠?



