是)我有的?
我有一个ASP.NET页面,允许用户通过a单击按钮下载文件.用户可以从可用文件列表(RadioButtonList)中选择他想要的文件,然后单击下载按钮进行下载.(我不应该为每个可以下载的文件提供链接 - 这是要求).
我想要什么?
我希望用户通过选择所需的单选按钮并单击按钮逐个下载多个文件.
我面临什么问题?
我可以第一次正确下载该文件.但是,下载后,如果我选择其他文件并单击按钮进行下载,则单击该按钮的事件不会回发,并且不会下载第二个文件.
我在按钮单击事件上使用以下代码:
protected void btnDownload_Click(object sender, EventArgs e)
{
string viewXml = exporter.Export();
Response.Clear();
Response.AddHeader("Content-Disposition", "attachment; filename=views.cov");
Response.AddHeader("Content-Length", viewXml.Length.ToString());
Response.ContentType = "text/plain";
Response.Write(viewXml);
Response.End();
}
Run Code Online (Sandbox Code Playgroud)
我在这里做错了吗?
可以在IE6,IE7和Chrome中复制相同的问题.我认为这个问题与浏览器无关.
Rob*_*bbZ 59
我在sharepoint上遇到了同样的问题.我在页面上有一个发送文件的按钮,单击按钮后,表单的其余部分没有响应.事实证明,这是一个sharepoint的事情,它将变量_spFormOnSubmitCalled设置为true以防止任何进一步的提交.当我们发送文件时,这不会刷新页面,因此我们需要手动将此变量设置为false.
在webpart上的按钮上,将OnClientClick设置为页面的javascript中的函数.
<asp:Button ID="generateExcel" runat="server" Text="Export Excel"
OnClick="generateExcel_Click" CssClass="rptSubmitButton"
OnClientClick="javascript:setFormSubmitToFalse()" />
Run Code Online (Sandbox Code Playgroud)
然后在javascript中我有这个功能.
function setFormSubmitToFalse() {
setTimeout(function () { _spFormOnSubmitCalled = false; }, 3000);
return true;
}
Run Code Online (Sandbox Code Playgroud)
我找到的3秒暂停是必要的,否则我在sharepoint设置之前设置变量.这样我让sharepoint正常设置然后我把它设置回false.
| 归档时间: |
|
| 查看次数: |
48827 次 |
| 最近记录: |