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 相关文章推荐
IE浏览器PNG图片透明效果代码
Sep 02 Javascript
onkeydown事件解决按回车键直接提交数据的需求
Apr 11 Javascript
jquery cookie的用法总结
Nov 18 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
Mar 13 Javascript
coffeescript使用的方式汇总
Aug 05 Javascript
JS实现超精简响应鼠标显示二级菜单代码
Sep 12 Javascript
JS中关于正则的巧妙操作
Aug 31 Javascript
JavaScript同源策略和跨域访问实例详解
Apr 03 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
Dec 05 jQuery
微信小程序Echarts图表组件使用方法详解
Jun 25 Javascript
jQuery 淡入/淡出效果函数用法分析
May 19 jQuery
JS数据类型分类及常用判断方法
Nov 19 Javascript
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中使用Oracle数据库(2)
2006/10/09 PHP
php压缩HTML函数轻松实现压缩html/js/Css及注意事项
2013/01/27 PHP
Window 7/XP 安装Apache 2.4与PHP 5.4 的过程详解
2013/06/02 PHP
ajax返回值中有回车换行、空格的解决方法分享
2013/10/24 PHP
Yii框架获取当前controlle和action对应id的方法
2014/12/03 PHP
php中smarty模板条件判断用法实例
2015/06/11 PHP
php编程每天必学之验证码
2016/03/03 PHP
Mootools 1.2教程 正则表达式
2009/09/15 Javascript
通过jQuery源码学习javascript(三)
2012/12/27 Javascript
浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
2014/01/09 Javascript
js判断iframe内的网页是否滚动到底部触发事件
2014/03/18 Javascript
JQuery+CSS实现图片上放置按钮的方法
2015/05/29 Javascript
jQuery+css3实现文字跟随鼠标的上下抖动
2015/07/31 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
Vue.js中数据绑定的语法教程
2017/06/02 Javascript
实例解析ES6 Proxy使用场景介绍
2018/01/08 Javascript
vuejs实现递归树型菜单组件
2018/01/13 Javascript
如何用input标签和jquery实现多图片的上传和回显功能
2018/05/16 jQuery
Spring boot 和Vue开发中CORS跨域问题解决
2018/09/05 Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
2018/09/05 Javascript
vscode 使用Prettier插件格式化配置使用代码详解
2020/08/10 Javascript
vue实现购物车的小练习
2020/12/21 Vue.js
[43:14]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
python使用beautifulsoup从爱奇艺网抓取视频播放
2014/01/23 Python
全面了解python中的类,对象,方法,属性
2016/09/11 Python
python MySQLdb使用教程详解
2018/03/20 Python
python的dataframe和matrix的互换方法
2018/04/11 Python
Python自动发送邮件的方法实例总结
2018/12/08 Python
深入解析神经网络从原理到实现
2019/07/26 Python
简单了解python数组的基本操作
2019/11/26 Python
Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例
2020/03/04 Python
python 读取串口数据的示例
2020/11/09 Python
Lou & Grey美国官网:主打舒适性面料服饰
2017/12/21 全球购物
威盛公司软件C++工程师笔试题面试题
2012/07/16 面试题
森林防火宣传标语
2014/06/27 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书