js+ajax实现获取文件大小的方法


Posted in Javascript onDecember 08, 2015

本文实例讲述了js+ajax实现获取文件大小的方法。分享给大家供大家参考,具体如下:

顾名思义,通过JS和Ajax来获取上传文件的大小,在上传之前可以有个判断,对上传的文件有所控制,因为js控制文件大小(JS获取文件大小)有些问题,具体大家试下就知道了,在此整理了一下ajax的获取文件大小的方法,比较好用,再调试过程中,出现了c:/fakepath/ 的错误,也将解决方案罗列在下面,以供大家参考

废话少说,代码如下

JS如下:

<script language="Jscript">
function chksize(){
  var ticketType = "Oil";
  var file1=document.getElementById("txtfile");
  var v = file1.value;
  file1.select();
  var realpath = document.selection.createRange().text;
  var input = "<Record><Type>TicketLoanResult</Type><TicketType>" + realpath + "</TicketType></Record>";
  var objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  objXmlHttp.Open("POST", "XMLHttpPost.aspx", false);
  objXmlHttp.Send(input);
  var returnXml = objXmlHttp.responseText;
  if(returnXml!=null)
  {
   returnXml=parseInt(returnXml/1024/1024);
  }
  alert(returnXml); 
  return false; 
}
</script>

后台C#代码:

public partial class XMLHttpPost : System.Web.UI.Page
{
 protected void Page_Load(object sender, EventArgs e)
 {
  try
  {
   XmlDocument xmlDocumenet = new XmlDocument();
   xmlDocumenet.Load(Request.InputStream);
   string type = xmlDocumenet.SelectSingleNode("descendant::Type").InnerText;
   string returnMessage = string.Empty;
   switch (type.Trim())
   {
    case "TicketLoanResult":
     returnMessage = GetTicketLoanResult(xmlDocumenet);
     break;
    default:
     break;
   }
   Response.ContentType = "text/xml";
   Response.Write(returnMessage);
  }
  catch (Exception exceptional)
  {
   //如果有???t返回??信息(Xml格式)
   string errorMessage = "<Error>" + exceptional.Message + "</Error>";
   Response.ContentType = "text/xml";
   Response.Write(errorMessage);
  }
  finally
  {
   Response.End();
  }
 }
 private string GetTicketLoanResult(XmlDocument input)
 {
  XmlNode item = input.SelectSingleNode("descendant::TicketType");
  string ticketType = item.InnerText.Trim();
  FileStream stream = new FileStream(ticketType,FileMode.Open);
  return stream.Length.ToString();
 }
}

完整实例代码点击此处本站下载。

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

Javascript 相关文章推荐
javascript call和apply方法
Nov 24 Javascript
JavaScript CSS菜单功能 改进版
Dec 20 Javascript
显示今天的日期js代码(阳历和农历)
Sep 30 Javascript
解决node-webkit 不支持html5播放mp4视频的方法
Mar 11 Javascript
jQuery实现大转盘抽奖活动仿QQ音乐代码分享
Aug 21 Javascript
jquery捕捉回车键及获取checkbox值与异步请求的方法
Dec 24 Javascript
jQuery给元素添加样式的方法详解
Dec 30 Javascript
javascript比较语义化版本号的实现代码
Sep 09 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
Aug 18 Javascript
微信小程序返回多级页面的实现方法
Oct 27 Javascript
JavaScript监听触摸事件代码实例
Dec 30 Javascript
Vue + iView实现Excel上传功能的完整代码
Jun 22 Vue.js
JS表格组件神器bootstrap table详解(基础版)
Dec 08 #Javascript
详解js中构造流程图的核心技术JsPlumb(2)
Dec 08 #Javascript
详解js中构造流程图的核心技术JsPlumb
Dec 08 #Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
Dec 08 #Javascript
jQuery实现的简单提示信息插件
Dec 08 #Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
Dec 08 #Javascript
AngularJS实现全选反选功能
Dec 08 #Javascript
You might like
php在项目中寻找代码的坏味道(综艺命名)
2012/07/19 PHP
mac环境中使用brew安装php5.5.15
2014/08/18 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
php获取当月最后一天函数分享
2015/02/02 PHP
PHP pear安装配置教程
2016/05/14 PHP
php图像验证码生成代码
2017/06/08 PHP
浏览器脚本兼容 文本框中,回车键触发事件的兼容
2010/06/21 Javascript
js中的值类型和引用类型小结 文字说明与实例
2010/12/12 Javascript
简单谈谈javascript代码复用模式
2015/01/28 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
2015/09/09 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
2017/08/10 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
2018/06/20 Javascript
layui table单元格事件修改值的方法
2019/09/24 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
[45:46]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS DT
2014/05/23 DOTA
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
[03:09]显微镜下的DOTA2第一期——带你走进华丽的DOTA2世界
2014/06/20 DOTA
[01:50:49]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第三场 1月24日
2021/03/11 DOTA
浅析Python的web.py框架中url的设定方法
2016/07/11 Python
Python常见格式化字符串方法小结【百分号与format方法】
2016/09/18 Python
python操作MySQL 模拟简单银行转账操作
2017/09/27 Python
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
对python GUI实现完美进度条的示例详解
2018/12/13 Python
Python实现实时数据采集新型冠状病毒数据实例
2020/02/04 Python
Python pandas对excel的操作实现示例
2020/07/21 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
python 基于selectors库实现文件上传与下载
2020/12/31 Python
Zooplus葡萄牙:欧洲领先的网上宠物商店
2018/07/01 全球购物
庆七一活动方案
2014/01/25 职场文书
医学生个人求职信范文
2014/02/07 职场文书
中药学自荐信
2014/06/15 职场文书
通过T-SQL语句创建游标与实现数据库加解密功能
2022/03/16 SQL Server
Win11怎么修改电源模式?Win11修改电源模式的方法
2022/04/05 数码科技
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技