(c# - GridView)在代码后面的LinkButton_Click上打开隐藏的FileUpload对话框
本文关键字:Click 对话框 FileUpload 隐藏 LinkButton GridView 代码 | 更新日期: 2023-09-27 18:12:58
我在我的GridView
中创建了这个LinkButton
:
<asp:LinkButton ID="LinkButtonOpenFile" CssClass="fa fa-upload" runat="server" OnClick="LinkButtonOpenFile_Click"></asp:LinkButton>
外面我的GridView我已经创建了一个FileUpload
:
<asp:FileUpload ID="FileUpload1" runat="server" Visible="false"/>
我试图让我的LinkButton
打开FileUpload
对话与Javascript(服务器和客户端)。没有一个是触发器。这是因为我的LinkButton
在我的GridView
吗?
我尝试过的例子:;
ClientSide,ServerSide JS:
function openFile(){
$("#FileUpload1").click();
}
和
protected void LinkButtonOpenFile_Click(object sender, ImageClickEventArgs e)
{
Page.ClientScript.RegisterStartupScript(GetType(), "Javascript", "openFile()", true);
}
关于如何解决这个问题有什么建议吗?
更新:Also tried this
<asp:LinkButton ID="LinkButtonOpenFile" CssClass="fa fa-upload" runat="server" OnClientClick="openFile();return false;"></asp:LinkButton>
JS:
function openFile(){
$("#FileUpload1").click();
}
我刚刚发现了这个代码片段,它帮助了我很多:
在你的html中:
<html>
<head>
<link rel="stylesheet" href="style.css">
<script src="script.js"></script>
</head>
<body>
<span class="file"><!--diesen span kannst du stylen und ist dann anklickbar-->
Anhänge auswählen
<input type="file" />
</span>
</body>
</html>
添加到你的css:
.file {
position: relative;
overflow: hidden;
}
.file input[type=file] {
position: absolute;
top: 0;
right: 0;
min-width: 100%;
min-height: 100%;
font-size: 100px;
text-align: right;
filter: alpha(opacity=0);
opacity: 0;
outline: none;
background: white;
cursor: inherit;
display: block;
}
你可以走了:-)