C# 按钮事件不存在';t在文件上传的更新面板内点火

C# 按钮事件不存在';t在文件上传的更新面板内点火,c#,asp.net,asp.net-ajax,updatepanel,ajaxcontroltoolkit,C#,Asp.net,Asp.net Ajax,Updatepanel,Ajaxcontroltoolkit,我有一个asp.net web表单页,它也使用母版页 这是一个简单的页面,其中显示一些文本和表单,该页面还允许用户上传.doc、.docx和pdf格式的简历 这个代码的问题是我无法触发 由于某些原因,即使这样也不起作用,请理解这个概念 更新面板用于部分回发,今天我们称之为AJAX 但是,不能使用AJAX将文件上载到服务器 AJAX使用不支持文件上传的xmlHttpRequest 所以,不要认为这是微软的错误。即使在今天,我们也没有任何javascript库支持使用AJAX上传文件。您在inter

我有一个asp.net web表单页,它也使用母版页

这是一个简单的页面,其中显示一些文本和表单,该页面还允许用户上传.doc、.docx和pdf格式的简历

这个代码的问题是我无法触发
由于某些原因,即使这样也不起作用,请理解这个概念

更新面板用于部分回发,今天我们称之为AJAX 但是,不能使用AJAX将文件上载到服务器 AJAX使用不支持文件上传的xmlHttpRequest

所以,不要认为这是微软的错误。即使在今天,我们也没有任何javascript库支持使用AJAX上传文件。您在internet上找到的所有AJAX文件上载程序都使用Flash:)


这是协议的局限性。使用任何其他jquery插件上传文件。更新面板对此不起作用。

请理解此概念

更新面板用于部分回发,今天我们称之为AJAX 但是,不能使用AJAX将文件上载到服务器 AJAX使用不支持文件上传的xmlHttpRequest

所以,不要认为这是微软的错误。即使在今天,我们也没有任何javascript库支持使用AJAX上传文件。您在internet上找到的所有AJAX文件上载程序都使用Flash:)


这是协议的局限性。使用任何其他jquery插件上传文件。更新面板对此不起作用。

FileUpload
控件不适用于异步回发。要在应用程序中实现此功能,请执行以下步骤

1.)在页面上放置一个

如果您在应用程序中使用母版页,并且您的网页使用母版页,请将脚本管理器放置在母版页中。如果不希望母版页具有脚本管理器,也可以将脚本管理器放置在特定的网页上

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
其余的上传按钮
OnClick
处理程序如下所示:

protected void btnUploadCV_Click(object sender, EventArgs e)
    {
            if (FileUpload1.HasFile)
            {                
               fileName = FileUpload1.FileName;
               FileUpload1.SaveAs("~/UploadedData/" + fileName);
               ... 
            }
    }

FileUpload
控件不适用于异步回发。要在应用程序中实现此功能,请执行以下步骤

1.)在页面上放置一个

如果您在应用程序中使用母版页,并且您的网页使用母版页,请将脚本管理器放置在母版页中。如果不希望母版页具有脚本管理器,也可以将脚本管理器放置在特定的网页上

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
其余的上传按钮
OnClick
处理程序如下所示:

protected void btnUploadCV_Click(object sender, EventArgs e)
    {
            if (FileUpload1.HasFile)
            {                
               fileName = FileUpload1.FileName;
               FileUpload1.SaveAs("~/UploadedData/" + fileName);
               ... 
            }
    }

这是一个众所周知的问题。您可以查找解决方案文件上载在“更新”面板中不起作用,因为它不支持部分回发,请尝试使用脚本管理器而不是客户端脚本方法。这是一个已知问题。您可以查找解决方案文件上载在“更新”面板中不起作用,因为它不支持部分回发,请尝试使用“脚本管理器”而不是“客户端脚本”方法我以前尝试过这种方法,但不起作用。这让我抓狂如果有帮助的话,检查一下这个:或者这个:另外,试着把你的FileUpload和uploadButton直接放在里面。我最终决定放弃这种方法,因为我使用Ajax级联进行下拉,这会产生各种各样的问题。到目前为止,我正在研究一种新的方法,这种方法目前正在发挥作用。我花了两天时间来解决这个问题,但没有成功。我试着解决一个问题,其他的问题也出现了。我以前试过这个方法,但没有成功。这让我抓狂如果有帮助的话,检查一下这个:或者这个:另外,试着把你的FileUpload和uploadButton直接放在里面。我最终决定放弃这种方法,因为我使用Ajax级联进行下拉,这会产生各种各样的问题。到目前为止,我正在研究一种新的方法,这种方法目前正在发挥作用。我花了两天时间来解决这个问题,但没有成功。我试着解决一个问题,但其他的问题都出现了。我同意我甚至切换到了不同的方法,但它们都不起作用。我现在已经删除了所有要收集的
UpdatePanel
all,然后我得到了这个错误
无效的回发或回调参数。在配置或页面中使用启用事件验证如果我单击
上传
按钮
我还尝试了
AsyncFileUpload`从我的另一个项目,该项目正在进行,但没有启动(我的意思是它没有为
AsyncFileUpload1\u UploadedComplete
块输入代码。我不确定它是VS还是什么?同意,我甚至切换到了不同的方法,但它们甚至都不起作用。我现在已经删除了
UpdatePanel
所有要收集的内容,然后我得到了这个错误
无效的回发或回调参数。启用了事件验证。)d在配置或页面中使用。
如果我单击
上传
按钮。
我还尝试了其他项目中的
AsyncFileUpload`但没有启动(我的意思是它没有输入
AsyncFileUploaded1\u UploadedComplete
块的代码。我不确定它是VS还是什么?
<Triggers>
<asp:PostBackTrigger ControlID="btnUploadCV"  />
</Triggers>
protected void btnUploadCV_Click(object sender, EventArgs e)
    {
            if (FileUpload1.HasFile)
            {                
               fileName = FileUpload1.FileName;
               FileUpload1.SaveAs("~/UploadedData/" + fileName);
               ... 
            }
    }