js判断file文本域中待上传文件的大小与尺寸
2013-01-29 10:17
531 查看
以下直接粘贴到记事本中,给后缀改为html即可运行
##################################################
<input name="txtImg" type="file" id="txtImg" />
<input name="btnUploadImg" type="button" id="btnUploadImg" value="上传" />
<span class="redcolor">(最佳图片尺寸:宽度不超过600像素,高度不超过600像素)</span>
<script language="javascript">
var AllowImgFileSize=512; //允许上传图片文件的大小 0为无限制 单位:KB
var AllowImgWidth=600; //允许上传的图片的宽度 0为无限制 单位:px(像素)
var AllowImgHeight=600; //允许上传的图片的高度 0为无限制 单位:px(像素)
function checkImg(){
var txtImg=document.getElementById("txtImg");
if (txtImg.value==""){
alert("请点击浏览按钮,选择您要上传的JPG或GIF文件!");
txtImg.focus();
return false;
}
var txtImg_url=txtImg.value.toLowerCase();
var txtImg_ext=txtImg_url.substring(txtImg_url.length-3,txtImg_url.length);
if (txtImg_ext!="jpg" && txtImg_ext!="gif" ){
alert("请选择JPG或GIF格式的文件!");
txtImg.select()
document.execCommand("Delete");
txtImg.focus();
return false;
}
var ErrMsgErrMsg = "";//错误信息
var img=new Image();
img.src=\'#\'" />
if(img.width > AllowImgWidth){
ErrMsgErrMsg="\n\n图片宽度超过限制 请上传宽度小于"+AllowImgWidth+"px的文件,当前图片宽度为"+img.width+"px";
alert(ErrMsgErrMsg);
return false;
}
if(img.height > AllowImgWidth){
ErrMsgErrMsg="\n\n图片高度超过限制 请上传高度小于"+AllowImgHeight+"px的文件,当前图片高度为"+img.height+"px";
alert(ErrMsgErrMsg);
return false;
}
var size = formatNum(img.fileSize / 1024,2);
if(size > AllowImgFileSize) {
ErrMsgErrMsg = "\n\n图片文件大小超过限制 请上传小于"+AllowImgFileSize+"KB的文件,当前文件大小为"+size+"KB";
alert(ErrMsgErrMsg);
return false;
}
alert('ok!');
return true;
}
#############辅助函数###############
function formatNum(amt,pre) {
pre = pre > 0 && pre <= 20 ? pre : 2;
amt = parseFloat((amt + "").replace(/[^\d\.-]/g, "")).toFixed(pre) + "";
var left = amt.split(".")[0].split("").reverse();
var right = amt.split(".")[1];
var t = "";
for(i = 0; i < left.length; i ++ ) {
t += left[i] + ((i + 1) % 3 == 0 && (i + 1) != left.length ? "" : "");
}
return t.split("").reverse().join("") + "." + right;
}
</script>
##################################################
<input name="txtImg" type="file" id="txtImg" />
<input name="btnUploadImg" type="button" id="btnUploadImg" value="上传" />
<span class="redcolor">(最佳图片尺寸:宽度不超过600像素,高度不超过600像素)</span>
<script language="javascript">
var AllowImgFileSize=512; //允许上传图片文件的大小 0为无限制 单位:KB
var AllowImgWidth=600; //允许上传的图片的宽度 0为无限制 单位:px(像素)
var AllowImgHeight=600; //允许上传的图片的高度 0为无限制 单位:px(像素)
function checkImg(){
var txtImg=document.getElementById("txtImg");
if (txtImg.value==""){
alert("请点击浏览按钮,选择您要上传的JPG或GIF文件!");
txtImg.focus();
return false;
}
var txtImg_url=txtImg.value.toLowerCase();
var txtImg_ext=txtImg_url.substring(txtImg_url.length-3,txtImg_url.length);
if (txtImg_ext!="jpg" && txtImg_ext!="gif" ){
alert("请选择JPG或GIF格式的文件!");
txtImg.select()
document.execCommand("Delete");
txtImg.focus();
return false;
}
var ErrMsgErrMsg = "";//错误信息
var img=new Image();
img.src=\'#\'" />
if(img.width > AllowImgWidth){
ErrMsgErrMsg="\n\n图片宽度超过限制 请上传宽度小于"+AllowImgWidth+"px的文件,当前图片宽度为"+img.width+"px";
alert(ErrMsgErrMsg);
return false;
}
if(img.height > AllowImgWidth){
ErrMsgErrMsg="\n\n图片高度超过限制 请上传高度小于"+AllowImgHeight+"px的文件,当前图片高度为"+img.height+"px";
alert(ErrMsgErrMsg);
return false;
}
var size = formatNum(img.fileSize / 1024,2);
if(size > AllowImgFileSize) {
ErrMsgErrMsg = "\n\n图片文件大小超过限制 请上传小于"+AllowImgFileSize+"KB的文件,当前文件大小为"+size+"KB";
alert(ErrMsgErrMsg);
return false;
}
alert('ok!');
return true;
}
#############辅助函数###############
function formatNum(amt,pre) {
pre = pre > 0 && pre <= 20 ? pre : 2;
amt = parseFloat((amt + "").replace(/[^\d\.-]/g, "")).toFixed(pre) + "";
var left = amt.split(".")[0].split("").reverse();
var right = amt.split(".")[1];
var t = "";
for(i = 0; i < left.length; i ++ ) {
t += left[i] + ((i + 1) % 3 == 0 && (i + 1) != left.length ? "" : "");
}
return t.split("").reverse().join("") + "." + right;
}
</script>
相关文章推荐
- JS判断文件大小-文件上传-浏览器-input-file
- js判断图片上传时的文件大小,和宽高尺寸
- js实现上传图片本地预览功能以及限制图片的文件大小和尺寸大小
- NeatUpload js 判断上传文件的大小是否超过了空间的大小
- js客户端判断文件大小限制上传
- JS 判断上传 文件 大小
- js判断上传图片大小及尺寸
- C# 用file 上传文件大小时判断文件大小 file onchange 事件为什么只执行一次解决方案
- 经典JS 判断上传文件大小和JS即时同步电脑时间
- JS 判断上传 文件 大小
- js判断上传文件的格式和大小
- js判断上传文件的类型和大小示例代码
- ajaxFileUpload.js上传图片插件,全浏览器兼容,规避json错误,带文件格式大小拦截
- springmvc+jquery+ajaxfileupload.js实现带有文本域的文件上传
- 客户端js判断文件类型和文件大小即限制上传大小图片预览
- JS判断文件上传大小
- js提交form表单 - input file 文件上传控制上传文件的大小和格式
- js判断上传文件大小
- js判断上传文件大小
- 兼容各浏览器的js判断上传文件大小【转】