本篇文章介绍了js ajax获取文件大小的实例,涉及javascript调用ajax交互及后台c#文件操作的相关技巧,需要的朋友可以参考下
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) { //如果有錯誤則返回錯誤信息(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获取文件大小,实例代码!
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注!
相关推荐:
ajax使用post发送数据xml格式接受数据
ajax实现输入框文字改变展示下拉列表的效果
以上就是javascript 使用ajax与c#获取文件大小的实现的详细内容。