UploadImage.aspx文件<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="UploadImage.aspx.vb" Inherits="uploadImage.UploadImage" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<script type="text/javascript">
function UpdateMsg(des, filename) {//此函数用来提供给提交到的页面如upload.ashx输出js的回调,更新当前页面的信息
if (filename == '') { alert('未上传文件!'); return false; }
// document.getElementByIdx_x('ajaxMsg').innerHTML='你在表单中输入的“文件描述”为:'+des+'<br/>'
// +'上传的图片为:<a href="uploads/'+filename+'" target="_blank">'+filename+'</a>'; document.getElementByIdx_x('ajaxMsg').innerHTML = '你在表单中输入的“文件描述”为:' + des + '<br/>'
+ '上传的图片为:<img src="uploads/' + filename + '">' + filename + '</img>'; } function check(f) {
if (f.des.value == '') {
alert('请输入文件描述!'); f.des.focus(); return false;
}
if (f.upfile.value == '') {
alert('请选择文件!'); f.upfile.focus(); return false;
}
}
</script>
<!--隐藏的iframe来接受表单提交的信息-->
<iframe name="ajaxifr" style="display:none;"></iframe>
<!--这里设置target="ajaxifr",这样表单就提交到iframe里面了,和平时未设置target属性时默认提交到当前页面-->
<!--注意一点的是使用iframe时在提交到的页面可以直接输出js来操作父页面的信息,一般的ajax提交文本信息时你需要返回信息,如果是js信息你还得eval下-->
<form method="post" enctype="multipart/form-data" action="uploadFile.ashx" target="ajaxifr" onsubmit="return check(this)">
文件描述:<input type="text" name="des" /><br />
选择文件:<input type="file" name="upfile" /><br />
<input type="submit" value="提交" />
</form>
<!--放入此div用来实现上传的结果-->
<div id="ajaxMsg"></div>
</body>
</html>uploadFile.ashx
Imports System
Imports System.Web
Public Class uploadFile : Implements IHttpHandler Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest Dim FileName As String = context.Request("id1")
context.Response.ContentType = "text/plain"
FileName = Chr(34) & System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8) & Chr(34) context.Response.AddHeader("content-disposition", "attachment; filename=" & FileName)
context.Response.End() End Sub Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End PropertyEnd Class
为什么总是跳不过去呢,我在ashx中设置了一个断点,
这是关于aspx的无刷新上传文件的问题,如果有类似功能的可以借鉴一下,急急急急
<head runat="server">
<title></title>
</head>
<body>
<script type="text/javascript">
function UpdateMsg(des, filename) {//此函数用来提供给提交到的页面如upload.ashx输出js的回调,更新当前页面的信息
if (filename == '') { alert('未上传文件!'); return false; }
// document.getElementByIdx_x('ajaxMsg').innerHTML='你在表单中输入的“文件描述”为:'+des+'<br/>'
// +'上传的图片为:<a href="uploads/'+filename+'" target="_blank">'+filename+'</a>'; document.getElementByIdx_x('ajaxMsg').innerHTML = '你在表单中输入的“文件描述”为:' + des + '<br/>'
+ '上传的图片为:<img src="uploads/' + filename + '">' + filename + '</img>'; } function check(f) {
if (f.des.value == '') {
alert('请输入文件描述!'); f.des.focus(); return false;
}
if (f.upfile.value == '') {
alert('请选择文件!'); f.upfile.focus(); return false;
}
}
</script>
<!--隐藏的iframe来接受表单提交的信息-->
<iframe name="ajaxifr" style="display:none;"></iframe>
<!--这里设置target="ajaxifr",这样表单就提交到iframe里面了,和平时未设置target属性时默认提交到当前页面-->
<!--注意一点的是使用iframe时在提交到的页面可以直接输出js来操作父页面的信息,一般的ajax提交文本信息时你需要返回信息,如果是js信息你还得eval下-->
<form method="post" enctype="multipart/form-data" action="uploadFile.ashx" target="ajaxifr" onsubmit="return check(this)">
文件描述:<input type="text" name="des" /><br />
选择文件:<input type="file" name="upfile" /><br />
<input type="submit" value="提交" />
</form>
<!--放入此div用来实现上传的结果-->
<div id="ajaxMsg"></div>
</body>
</html>uploadFile.ashx
Imports System
Imports System.Web
Public Class uploadFile : Implements IHttpHandler Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest Dim FileName As String = context.Request("id1")
context.Response.ContentType = "text/plain"
FileName = Chr(34) & System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8) & Chr(34) context.Response.AddHeader("content-disposition", "attachment; filename=" & FileName)
context.Response.End() End Sub Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End PropertyEnd Class
为什么总是跳不过去呢,我在ashx中设置了一个断点,
这是关于aspx的无刷新上传文件的问题,如果有类似功能的可以借鉴一下,急急急急
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货