yii2-basic后台管理功能开发之四:图片上传FileInput

时间:2024-04-20 05:36:36

我采用的是 kartik-v/yii2-widget-fileinput的文件上传插件,大家可以去github查看详细的安装方法和使用说明.

需求:上传图片+可以预览缩略图

在这里说说我碰到的问题:限制图片长宽尺寸.

1,首先想到的是,在models里设置图片的长宽的限制

%>_<%,不可以,models获取到的总是预览的缩略图的尺寸.......

2,其次利用插件里的长宽的限制

%>_<%,虽然尺寸不合适会有提示,但是依然可以提交提交...........

3,在控制器里对图片的尺寸进行判断控制

%>_<%控制器里获取不了图片的尺寸,只有一个size..........

3,最终利用了插件的属性设置,以及事件方法结合起来,才实现了控制尺寸,不知道有没有更适合的办法

>长宽设置

'maxImageWidth'=>,
'minImageWidth' => ,
'minImageHeight' => ,
'maxImageHeight' => ,

>事件控制.

是根据错误提示,来判断尺寸是否合适的

'pluginEvents' => [
'fileimageloaded' => 'function() {
$('#submitbtn').removeAttr("disabled");
$('#submitbtn').removeAttr("title");
$('#submitbtn').removeAttr("data-toggle");
if($('.file-upload-indicator').attr('title') == "上传错误"){
$('#submitbtn').attr("disabled","disabled");
$('#submitbtn').attr("data-toggle","tooltip");
$('#submitbtn').attr("title","请选择合适尺寸的图片");
}
}',
],