jQuery实现判断上传图片类型和大小的方法示例


Posted in jQuery onApril 11, 2018

本文实例讲述了jQuery实现判断上传图片类型和大小的方法。分享给大家供大家参考,具体如下:

这里使用jQuery判断上传图片的类型和大小:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<form action="" method="">
  <input type="file" id="file" />
</form>
<p id="p_1">图片格式为:</p>
<p id="p_2">图片大小为:</p>
<script src="js/jquery-1.8.3.min.js"></script>
<script>
$(function(){
  var p_1 = $('#p_1'),
    p_2 = $('#p_2');
  $('body').on('change','#file',function(){
    var path = $(this).val(),
    extStart = path.lastIndexOf('.'),
    ext = path.substring(extStart,path.length).toUpperCase();
    //判断图片格式
    if(ext !== '.PNG' && ext !== '.JPG' && ext !== '.JPEG' && ext !== '.GIF'){
      alert('请上传正确格式的图片');
      resetFile();
      return false;
    }else{
      p_1.html('图片格式为:' + ext);
    }
    //获取图片大小,注意使用this,而不是$(this)
    var size = this.files[0].size / 1024;
    if(size > 10240){
      alert('图片大小不能超过10M');
      resetFile();
      return false;
    }else{
      p_2.html('图片大小为:' + size.toFixed(2) + 'KB');
    }
  })
  //还原
  function resetFile(){
    //清空file表单的值,不能直接使用$('#file').val('')这种写法
    $('form').html('<input type="file" id="file" />');
    p_1.html('图片格式为:');
    p_2.html('图片大小为:');
  }
})
</script>
</body>
</html>

lastIndexOf()方法从后向前检索指定字符串,如果出现了指定的字符,则返回该字符所在的位置,如果没有,返回-1,位置从0开始计数

toUpperCase()方法转换成大写字母

substring()方法截取字符串,第一个参数为开始的位置,第二个参数为结束的位置(如果省略,则默认会截取到字符串的结尾),与slice()substr()方法不同的是,substring()不接受负的参数

slice()方法同substring()方法,区别是接受负的参数(若参数为负数,则从字符串尾部开始计算位置)

substr()方法截取字符串,第一个参数是开始的位置,第二个参数是截取的长度(不同于slice和substring),现已不建议使用

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery插件FusionWidgets实现的Bulb图效果示例【附demo源码下载】
Mar 23 jQuery
HTML5+jQuery实现搜索智能匹配功能
Mar 24 jQuery
jQuery自定义元素右键点击事件(实现案例)
Apr 28 jQuery
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
jQuery复合事件结合toggle()方法的用法示例
Jun 10 jQuery
jquery中done和then的区别(详解)
Dec 19 jQuery
深入浅析angular和vue还有jquery的区别
Aug 13 jQuery
浅谈JS和jQuery的区别
Mar 27 jQuery
JS实现点击生成UUID的方法完整实例【基于jQuery】
Jun 12 jQuery
jQuery/JS监听input输入框值变化实例
Oct 17 jQuery
jQuery实现可编辑的表格
Dec 11 jQuery
jquery.validate自定义验证用法实例分析【成功提示与择要提示】
Jun 06 jQuery
[原创]jQuery实现合并/追加数组并去除重复项的方法
Apr 11 #jQuery
jQuery中复合选择器简单用法示例
Mar 31 #jQuery
jQuery中内容过滤器简单用法示例
Mar 31 #jQuery
jQuery中可见性过滤器简单用法示例
Mar 31 #jQuery
jQuery实现的上传图片本地预览效果简单示例
Mar 29 #jQuery
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 #jQuery
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
Mar 28 #jQuery
You might like
PHP Zip解压 文件在线解压缩的函数代码
2010/05/26 PHP
Yii实现Command任务处理的方法详解
2016/07/14 PHP
学习ExtJS(二) Button常用方法
2009/10/07 Javascript
jQuery之浮动窗口实现代码(两种方法)
2010/09/08 Javascript
Javascript下判断是否为闰年的Datetime包
2010/10/26 Javascript
javascript中的self和this用法小结
2014/02/08 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
jQuery DOM删除节点操作指南
2015/03/03 Javascript
Jquery简单分页实现方法
2015/07/24 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
2017/01/20 Javascript
创建简单的node服务器实例(分享)
2017/06/23 Javascript
jQuery zTree搜索-关键字查询 递归无限层功能实现代码
2018/01/25 jQuery
nginx配置域名后的二级目录访问不同项目的配置操作
2020/11/06 Javascript
在Python中使用Mako模版库的简单教程
2015/04/08 Python
浅谈python新手中常见的疑惑及解答
2016/06/14 Python
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
2018/07/04 Python
Python算法的时间复杂度和空间复杂度(实例解析)
2019/11/19 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
浅谈Pycharm的项目文件名是红色的原因及解决方式
2020/06/01 Python
如何用python处理excel表格
2020/06/09 Python
Python使用itcaht库实现微信自动收发消息功能
2020/07/13 Python
EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的
2015/07/24 面试题
财务人员个人自荐信范文
2013/09/26 职场文书
生物专业个人自荐信范文
2013/11/29 职场文书
大学生入党思想汇报
2014/01/01 职场文书
《草虫的村落》教学反思
2014/02/16 职场文书
《歌唱二小放牛郎》教学反思
2014/04/19 职场文书
中国梦演讲稿5分钟
2014/08/19 职场文书
综合测评个人总结
2015/03/03 职场文书
工作能力自我评价2015
2015/03/05 职场文书
2015年小学一年级班主任工作总结
2015/05/21 职场文书
小兵张嘎观后感300字
2015/06/03 职场文书
初中语文教学研修日志
2015/11/13 职场文书
MySQL Innodb索引机制详细介绍
2021/11/23 MySQL