easyui1.5 filebox控件中增加文件大小的验证规则

本文介绍了如何在EasyUI 1.5的filebox组件中添加文件大小验证规则,确保上传的文件不超过特定限制。通过示例代码展示了实现方法。

代码:

$.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:

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

js:

$('#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' ]
});


End.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值