C# 从codebehind触发html输入文件

C# 从codebehind触发html输入文件,c#,asp.net,html,C#,Asp.net,Html,我的asp.net页面中有一个HTML输入: <input type="file" name="image" accept="image/*" id="AttachMe"> 这一切都是美好的-它打开了文件浏览对话框等 然而,我想做的是: 1-使其不可见(如果有可能-如果没有,我可以将其移到页面中的其他位置) 2-从codebehind触发此 我在一个数据列表中有多行,每行上都有一个按钮。该按钮加载C#中的相关位,以确定我们按下按钮的行。然后我希望它加载HTML文件输入 不幸的是

我的asp.net页面中有一个HTML输入:

<input type="file" name="image" accept="image/*" id="AttachMe">

这一切都是美好的-它打开了文件浏览对话框等

然而,我想做的是:

1-使其不可见(如果有可能-如果没有,我可以将其移到页面中的其他位置)

2-从codebehind触发此

我在一个数据列表中有多行,每行上都有一个按钮。该按钮加载C#中的相关位,以确定我们按下按钮的行。然后我希望它加载HTML文件输入

不幸的是,我不能简单地将HTML输入放在每一行中,因为我们讨论的是手机,而且空间有限(我尝试过)。另外,我想获得所选文件的URL(我认为这很容易获得)

但主要是,我需要知道如何从C#触发HTML文件输入,这样我基本上可以单击按钮,然后C#将为我触发HTML文件输入

编辑-这是我现在拥有的代码:

我的文件上载:

<asp:FileUpload id="FileUploadControl" runat="server" />

要调用它的脚本:

<script type="text/javascript">
        function AttachAFile() {
            document.getElementById('<%= FileUploadControl.ClientID %>').click();
        }
    </script>

函数AttachFile(){
document.getElementById(“”)。单击();
}
这个脚本是从C#codebehind内部调用的。它被称为(我试过使用警报和调用其他按钮)


但是,出于某种原因,它仍然没有调用FileUploadControl。有人有什么想法吗?我遇到过类似的主题,它们的工作方式似乎与我的工作方式完全相同(FileUploadControl本身也可以工作)。

它有一个ID。因此,使用该ID关联一个CSS类,类似于
display:none您可能需要在服务器上运行它并使用asp:控件。或者,只是用if语句将其包围不幸的是,我尝试了搜索,但没有找到任何有效的东西(尽管很可能是我在寻找错误的东西)。我想要一个代码示例来让我动起来。我想你需要在点击按钮后用javascript激活文件上传。Tou可以在加载页面时实现这一点。像这样的$('input[type=button]')。单击(function(){$(this).parent(.item”).find('input[type=file]')。trigger('click');});为什么要在服务器端执行此操作?我不希望在服务器端执行此操作。如果我做错了什么,请告诉我。