Javascript 使用ajax与C#获取文件大小实例详解


Posted in Javascript onJanuary 13, 2017

Javascript 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();
 }
}

js ajax获取文件大小,实例代码!

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
javascript arguments 传递给函数的隐含参数
Aug 21 Javascript
js getElementsByTagName的简写方式
Jun 27 Javascript
js 使FORM表单的所有元素不可编辑的示例代码
Oct 17 Javascript
屏蔽相应键盘按钮操作
Mar 10 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
Jan 03 Javascript
Vue中使用Sortable的示例代码
Apr 07 Javascript
Node.js 使用jade模板引擎的示例
May 11 Javascript
node.js实现为PDF添加水印的示例代码
Dec 05 Javascript
vue transition 在子组件中失效的解决
Nov 12 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
Feb 09 Javascript
jQuery表单校验插件validator使用方法详解
Feb 18 jQuery
微信小程序调用后台service教程详解
Nov 06 Javascript
详解angularJs中自定义directive的数据交互
Jan 13 #Javascript
微信小程序 MD5加密登录密码详解及实例代码
Jan 12 #Javascript
很棒的一组js图片轮播特效
Jan 12 #Javascript
微信小程序 页面跳转传递值几种方法详解
Jan 12 #Javascript
微信小程序 详解Page中data数据操作和函数调用
Jan 12 #Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
Jan 12 #Javascript
js实现微博发布小功能
Jan 12 #Javascript
You might like
使用 PHPStorm 开发 Laravel
2015/03/24 PHP
PHPCMS V9 添加二级导航的思路详解
2016/10/20 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
phpStudy配置多站点多域名方法及遇到的403错误解决方法
2017/10/19 PHP
在javascript中执行任意html代码的方法示例解读
2013/12/25 Javascript
JS根据变量保存方法名并执行方法示例
2014/04/04 Javascript
jquery插件Jplayer使用方法简析
2016/04/22 Javascript
JavaScript作用域示例详解
2016/07/07 Javascript
jQuery+ajax读取并解析XML文件的方法
2016/09/09 Javascript
js html css实现复选框全选与反选
2016/10/09 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
JavaScript实现的XML与JSON互转功能详解
2017/02/16 Javascript
vue-router重定向不刷新问题的解决
2018/06/25 Javascript
vue移动端弹框组件的实例
2018/09/25 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
[01:12]DOTA2 2015年秋季互动指南
2015/11/10 DOTA
Python批量修改图片分辨率的实例代码
2019/07/04 Python
django 信号调度机制详解
2019/07/19 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
python__name__原理及用法详解
2019/11/02 Python
Python如何对XML 解析
2020/06/28 Python
python七种方法判断字符串是否包含子串
2020/08/18 Python
python动态规划算法实例详解
2020/11/22 Python
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
香港演唱会订票网站:StubHub香港
2019/10/10 全球购物
班子群众路线教育实践个人对照检查材料思想汇报
2014/09/30 职场文书
计划生育工作汇报
2014/10/28 职场文书
劳模事迹材料范文
2014/12/24 职场文书
工作自我评价范文
2015/03/05 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书
pytorch交叉熵损失函数的weight参数的使用
2021/05/24 Python
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python
mysq启动失败问题及场景分析
2021/07/15 MySQL