layui 阻止图片上传的实例(before方法)

作者:清欢时间:2026-10-23 11:33:54浏览:666

本文介绍如何在 layui 1.0.9 版本中通过修改 upload.js 源码,利用 before 方法实现前端图片大小校验并阻止上传。针对未定义 before 方法的兼容处理,提供了具体的代码修改方案,确保在不影响原有逻辑的前提下实现自定义校验功能。

layui 前端图片上传校验背景

当前项目涉及图片上传功能,需对图片大小进行校验,且不同场景下的限制标准各异。若在后端进行控制较为繁琐,因此选择在前端 JavaScript 中进行校验。本文基于 layui(版本 1.0.9)的 upload.js 模块展开,该版本原生不支持通过 before 方法阻止图片上传,故需对源码进行适当修改。

源码修改与 before 方法处理


//改动前的
s.before && s.before(e),l.parent().submit();
//改动后的
if(s.before==undefined || s.before(e)==undefined || (s.before && s.before(e))) l.parent().submit();
else return false;

兼容未定义 before 方法的逻辑

由于此前上传图片功能未定义 before 方法(默认返回 undefined),为确保不破坏现有代码逻辑,此处增加了相应的判断逻辑。在源码中,s.before 代表 before 方法的定义,而 s.before(e) 则是其执行返回值;若未定义该方法,则返回值为 undefined。

总结

以上即为 layui 通过 before 方法阻止图片上传的具体实现方案,供参考使用。

作者最新文章