zoukankan      html  css  js  c++  java
  • easyUI filebox限定文件大小

    转载自:https://www.2cto.com/kf/201701/574667.html
    侵删
     easyui1.5filebox控件中增加文件大小的验证规则
    2017-01-07 09:22:00          来源:a307433749的专栏  
    收藏   我要投稿

    代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    $.extend($.fn.validatebox.defaults.rules, {
            // filebox验证文件大小的规则函数
            // 如:validType : ['fileSize[1,"MB"]']
            fileSize : {
                validator : function(value, array) {
                    var size = array[0];
                    var unit = array[1];
                    if (!size || isNaN(size) || size == 0) {
                        $.error('验证文件大小的值不能为 "' + size + '"');
                    } else if (!unit) {
                        $.error('请指定验证文件大小的单位');
                    }
                    var index = -1;
                    var unitArr = new Array("bytes", "kb", "mb", "gb", "tb", "pb", "eb", "zb", "yb");
                    for (var i = 0; i < unitArr.length; i++) {
                        if (unitArr[i] == unit.toLowerCase()) {
                            index = i;
                            break;
                        }
                    }
                    if (index == -1) {
                        $.error('请指定正确的验证文件大小的单位:["bytes", "kb", "mb", "gb", "tb", "pb", "eb", "zb", "yb"]');
                    }
                    // 转换为bytes公式
                    var formula = 1;
                    while (index > 0) {
                        formula = formula * 1024;
                        index--;
                    }
                    // this为页面上能看到文件名称的文本框,而非真实的file
                    // $(this).next()是file元素
                    return $(this).next().get(0).files[0].size < parseFloat(size) * formula;
                },
                message : '文件大小必须小于 {0}{1}'
            }
        });

    使用方式:

    html:

    1
    <input name="file" class="easyui-filebox" validType="fileSize:[10,'MB']">

    js:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $('#file').filebox({ 
            required : true
            width : '300px'
            multiple : true
            validType : ['fileSize[1024,"kb"]' ], 
            buttonText : '请选择'
            buttonAlign : 'right'
            prompt : '请选择一个图片类型的文件'
            accept : [ 'image/jpg', 'image/bmp', 'image/jpeg', 'image/gif', 'image/png'
    });
  • 相关阅读:
    比特币搬砖对冲策略Python源码
    30行JavaScript代码实现一个比特币量化策略
    JBOSS EJB发布WebService
    位运算小练习(1)
    第二周作业
    第一周作业
    CentOS虚拟机NAT方式无法上网
    go语言实现排序算法
    Ubuntu更换科大源
    将Windows下的文件同步到Linux下
  • 原文地址:https://www.cnblogs.com/zou-rong/p/10124221.html
Copyright © 2011-2022 走看看