AjaxFileUpload渲染带有事件的黑色按钮

本文关键字:黑色 按钮 事件 AjaxFileUpload | 更新日期: 2023-09-27 18:10:23

我已经花了一整天的时间在这上面了。我正在尝试使用Ajax控制工具包中的FileUpload控件。只要我添加一个EventHandler控件:

OnClientUploadComplete="File_Upload"

它只呈现一个黑色按钮。关于这个问题,我已经看了所有的问题。我使用的是框架4.0,并仔细检查了我使用的是4.0版本的工具包。我在我的Visual Studio项目中引用了这个工具包。这是我的。aspx代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebUpload_de.aspx.cs" Inherits="WebFileTransfer.WebUpload_de" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="AjaxControlToolkit" %>
<!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 id="Head1" runat="server">
    <link rel="stylesheet" href="Default.css" type="text/css" media="screen" />
    <title>File Upload</title>
</head>
<body>
    <form id="form1" runat="server">
        <AjaxControlToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" 
            runat="server">
        </AjaxControlToolkit:ToolkitScriptManager>
        <div>
            <AjaxControlToolkit:AjaxFileUpload ID="AjaxFileUpload1" 
                runat="server" OnClientUploadComplete="File_Upload"
                Width="500px" />
        </div>
    </form>
</body>
</html>

到我的网页。config我添加了这个:

<system.web>
    <httpHandlers >
      <add verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/>
    </httpHandlers>
</system.web>
<system.webServer>    
    <handlers>
      <add name="AjaxFileUploadHandler" verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/>
    </handlers>
  </system.webServer>

后面的代码定义了函数:

protected void File_Upload(object sender, AjaxFileUploadEventArgs e)
    {
        string filename = e.FileName;
        string strDestPath = Server.MapPath("~/Documents/");
        AjaxFileUpload1.SaveAs(@strDestPath + filename);
    }

控件只有在我从AjaxFileUpload标签中移除OnClientUploadComplete时才会呈现。

谁能解释一下?

AjaxFileUpload渲染带有事件的黑色按钮

OnClientUploadComplete是客户端事件处理程序。它必须绑定到JavaScript函数。只需将script元素添加到您的页面,并使用以下函数:

function File_Upload(sender, args){
  alert("File uploaded");
}