1

我必须通过单击图像按钮来上传图像。我尝试使用以下代码。

<head runat="server">
<title></title>
<script>
    function browse() {
        document.getElementById('<%= FileUpload1.ClientID %>').click();
 }
  </script>
   </head>
<body>
<form id="form1" runat="server">
<div>
  <asp:toolkitscriptmanager ID="ToolkitScriptManager1" runat="server">
  </asp:toolkitscriptmanager>           
  <asp:FileUpload ID="FileUpload1" runat="server" />
  <asp:ImageButton ID="ImageButton1" runat="server" OnClientClick="browse();"
  ImageUrl="logo.gif" />
 </div>
 </form>
 </body>

在图像按钮上单击浏览窗口打开。但是当我单击图像并打开它时,该图像路径在上传控件文本框中不可见,就像我们通常使用没有图像按钮的上传控件一样。这意味着上传 control.Hasfile 是 false 谁能帮我解决这个问题?

提前致谢

4

2 回答 2

1

当您使用文件上传器浏览图像时,路径会自动出现在文本框中。

无需为此采取额外的眉毛或图像按钮。

浏览按钮是默认给出的。

您可以在以下链接中获取带有图示的文件上传器教程:

http://www.devmanuals.com/tutorials/ms/aspdotnet/fileupload.html

如果要保存图像,请在代码中使用此功能:

protected void btnUploadClick(object sender, EventArgs e) 
{ 
    HttpPostedFile file = Request.Files["myFile"]; 
    if (file != null && file.ContentLength ) 
    { 
        string fname = Path.GetFileName(file.FileName); 
        file.SaveAs(Server.MapPath(Path.Combine("~/App_Data/", fname))); 
    } 
} 
于 2013-09-30T05:47:03.973 回答
0

对图像按钮使用以下代码:

OnClientClick="browse(); return false;"

于 2014-05-26T06:28:25.250 回答