我有一个带有updatepanel,脚本管理器和asyncfileupload控件的用户控件.
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %> <asp:ScriptManager ID="ScriptManager2" runat="server" ></asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <cc1:AsyncFileUpload ID="AsyncFileUpload2" runat="server" /> <asp:LinkButton id="lbSubmitOrder" runat="server" title="Submit Order Request" class="btn_blue_dynamic_med"/> </ContentTemplate> </asp:UpdatePanel>
在我的代码背后:
Dim path As String = Server.MapPath("~/temp/test.tmp") AsyncFileUpload2.SaveAs(path)
在我的AsyncFileUpload2对象中,文件名是什么都没有.我似乎无法引用应该上传的文件.
-Nate
UPDATE
我已经添加
Private Sub AsyncFileUpload1_UploadedComplete(ByVal sender As Object,ByVal e As AjaxControlToolkit.AsyncFileUploadEventArgs) Handles AsyncFileUpload1.UploadedComplete If e.state = AjaxControlToolkit.AsyncFileUploadState.Success Then '....' Else showErrorMessage(e) End If End Sub
在选择文件后,我无法在“if”语句中找到断点.我想我的页面上有一些错误,ajax是如何工作的?不知道它是什么.
固定!
我通过带有visible = true / false div的单选按钮显示ajax上传框.答案告诉我,控件必须在页面加载.我带走了div,一切正常!我现在将通过jquery进行show / hide(我本来应该做的).
解决方法
确保没有异步加载带有asyncfileupload控件的usercontrol,例如通过Response.Redirect(“pageWithUploadControl”).
您是否处理过FileUploadComplete事件并检查AsyncFileUploadState是否成功?
Private Sub AsyncFileUpload1_UploadedComplete(ByVal sender As Object,ByVal e As AjaxControlToolkit.AsyncFileUploadEventArgs) Handles AsyncFileUpload1.UploadedComplete If e.state = AjaxControlToolkit.AsyncFileUploadState.Success Then '....' Else showErrorMessage(e) End If End Sub Private Sub showErrorMessage(ByVal e As AjaxControlToolkit.AsyncFileUploadEventArgs) Dim message As String = String.Empty Select Case e.statusMessage Case AjaxControlToolkit.AsyncFileUpload.Constants.Errors.EmptyContentLength message = "Empty content length!" Case AjaxControlToolkit.AsyncFileUpload.Constants.Errors.FileNull message = "Fill NULL!" Case AjaxControlToolkit.AsyncFileUpload.Constants.Errors.InputStreamNull message = "Input Stream NULL!" Case AjaxControlToolkit.AsyncFileUpload.Constants.Errors.NoFileName message = "No File Name!" Case AjaxControlToolkit.AsyncFileUpload.Constants.Errors.NoFiles message = "No Files!" End Select LblMessage.Text = message End Sub
尝试更改表单的enctype:
<form id="form1" enctype="multipart/form-data" runat="server">
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。