我采用的是 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","请选择合适尺寸的图片");
}
}',
],