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 相关文章推荐
js数组转json并在后台对其解析具体实现
Nov 20 Javascript
基于jQuery实现表格的查看修改删除
Aug 01 Javascript
Javascript数组循环遍历之forEach详解
Nov 07 Javascript
Bootstrap表格使用方法详解
Feb 17 Javascript
layer弹出层中H5播放器全屏出错的解决方法
Feb 21 Javascript
详解Vue用axios发送post请求自动set cookie
May 10 Javascript
JS 调试中常见的报错问题解决方法
May 20 Javascript
js学习总结之DOM2兼容处理this问题的解决方法
Jul 27 Javascript
koa2使用ejs和nunjucks作为模板引擎的使用
Nov 27 Javascript
微信小程序实现图片上传
May 23 Javascript
Vue.js实现大屏数字滚动翻转效果
Nov 29 Javascript
Jquery Fade用法详解
Nov 06 jQuery
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
全国FM电台频率大全 - 4 山西省
2020/03/11 无线电
PHP CLI模式下的多进程应用分析
2013/06/03 PHP
PHP后台备份MySQL数据库的源码实例
2019/03/18 PHP
laravel中的fillable和guarded属性详解
2019/10/23 PHP
THINKPHP5分页数据对象处理过程解析
2020/10/28 PHP
xheditor与validate插件冲突的解决方案
2010/04/15 Javascript
jQuery语法高亮插件支持各种程序源代码语法着色加亮
2013/04/27 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
JQuery中SetTimeOut传参问题探讨
2013/05/10 Javascript
jQuery中复合属性选择器用法实例
2014/12/31 Javascript
jQuery中extend函数的实现原理详解
2015/02/03 Javascript
jQuery 回调函数(callback)的使用和基础
2015/02/26 Javascript
js+HTML5实现canvas多种颜色渐变效果的方法
2015/06/05 Javascript
AngularJS中的promise用法分析
2017/05/19 Javascript
浅析Node.js非对称加密方法
2018/01/29 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
js自定义input文件上传样式
2018/10/26 Javascript
浅谈Vue.js中如何实现自定义下拉菜单指令
2019/01/06 Javascript
JavaScript实现简单贪吃蛇效果
2020/03/09 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
ubuntu安装mysql pycharm sublime
2018/02/20 Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
2018/03/15 Python
Python装饰器原理与简单用法实例分析
2018/04/29 Python
解决pytorch GPU 计算过程中出现内存耗尽的问题
2019/08/19 Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
2020/02/28 Python
使用Python操作MySQL的小技巧
2020/09/10 Python
python录音并调用百度语音识别接口的示例
2020/12/01 Python
信息与计算科学专业推荐信
2014/02/23 职场文书
应届毕业生求职信
2014/05/26 职场文书
大学专科求职信
2014/07/02 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
英文导游词
2015/02/13 职场文书
golang 生成对应的数据表struct定义操作
2021/04/28 Golang
Pytest中skip skipif跳过用例详解
2021/06/30 Python
基于Python实现将列表数据生成折线图
2022/03/23 Python
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android