【发布时间】:2014-04-10 20:03:06
【问题描述】:
我的 .aspx 页面中有这个脚本.....
我还有一些按钮可以将数据从数据库解析到 Gridview,每当我单击按钮时,加载栏都会显示在页面上。
进度加载栏在我将gridview导出为PDF的函数中工作正常,加载栏显示并在打开pdf文件后继续显示,知道如何停止它吗?
<script type="text/javascript" src="../../Styles/jquery.js"></script>
<script type="text/javascript">
function ShowProgress() {
setTimeout(function () {
var modal = $('<div />');
modal.addClass("modal");
$('body').append(modal);
var loading = $(".loading");
loading.show();
var top = Math.max($(window).height() / 2 - loading[0].offsetHeight / 2, 0);
var left = Math.max($(window).width() / 2 - loading[0].offsetWidth / 2, 0);
loading.css({ top: top, left: left });
}, 100);
}
$('form').live("submit", function () { ShowProgress(); });
</script>
在我的 Page_load 中,我有:
if (!IsPostBack)
{
string script = "$(document).ready(function () { $('[id*=btnSubmit]').click(); });";
ClientScript.RegisterStartupScript(this.GetType(), "load", script, true);
}
当我触发此事件时,我会收到报告但我的栏一直在加载:
protected void ExportToPDFUsers(object sender, EventArgs e)
{
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter hw = new HtmlTextWriter(sw))
{
//To Export all pages
GridView1.AllowPaging = false;
this.BindGridUsers();
GridView1.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A2, 10f, 10f, 10f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
pdfDoc.AddTitle("Member Signature Card Image Users Details");
pdfDoc.AddCreationDate();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=UsersDetails.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Write(pdfDoc);
Response.End();
}
}
【问题讨论】:
标签: c# javascript jquery asp.net