有一个执行下载功能的Web表单。当用户单击按钮时,它首先被禁用(使用JS OnClientClick方法),然后在触发按钮单击后下载(后面代码中的OnClick方法中的实现)相关文件。 。我要在下载完成后再次启用该按钮。
以前,使用Cookie可以很好地工作(在其中的代码后面添加了一个cookie,并可以从JS连续读取它)。但是我启用了安全cookie机制,现在不会禁用该按钮。
是否有其他使按钮启用的机制?
回发页面后一切正常
//aspx page
<asp:Button ID="btn" runat="server" Text="Download" UseSubmitBehavior="false"
OnClientClick="Download(this)" OnClick="btn_Click" />
function Download(element) {
element.disabled = true; //button become disable
}
//codebehind
protected void btn_Click(object sender, EventArgs e)
{
var data = getData();
Response.AddHeader("Content-Length", userDataText.Length.ToString());
Response.ContentType = "text/csv";
Response.AppendHeader("content-disposition", string.Format("attachment;filename=\"{0}\"", "download_file"));
Response.Write(data);
Response.Flush();
Response.End();
}
我希望在下载csv文件后禁用该按钮。解决方案不应该取决于cookie。但是实际上并没有这种功能。