I'm fairly new to webdevelopment and I can't seem to get a loading gif to appear, while I am executing a code behind export.
My onclick event is on an Imagebutton inside a gridview. Can you please help me? Here I have the ImageButtons:
<HeaderTemplate>
<asp:ImageButton ID="btnExport" OnClick="btnExport_Click" runat="server" ImageUrl="~/Images/excel.gif" AlternateText="Export top records!"/>
<asp:ImageButton ID="btnExportRed" OnClick="btnExportRed_Click" runat="server" ImageUrl="~/Images/excel_red.gif" AlternateText="Export all records!"/>
</HeaderTemplate>
this is my code behind:
protected void btnExport_Click(object sender, EventArgs e)
{
try
{
LoadWaitImage();
[functional code]
UnloadWaitImage();
}
catch (Exception ex)
{
lblMessage.Text = ex.Message;
upnlMsg.Update();
UnloadWaitImage();
}
}
private void LoadWaitImage()
{
ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "showMyImage", "hideLoading()", true);
}
private void UnloadWaitImage()
{
ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "showMyImage", "hideLoading()", true);
}
and the js to fire:
function showLoading()
{
document.getElementById('lblMessage').value = "";
document.getElementById('ucMarketing_btnSearch').disabled = true;
document.getElementById('btnClearFilters').disabled = true;
document.getElementById('imgSaveToSegments').disabled = true;
document.getElementById('divLoadingImg2').style.display = "";
}
function hideLoading()
{
document.getElementById('ucMarketing_btnSearch').disabled = false;
document.getElementById('btnClearFilters').disabled = false;
document.getElementById('imgSaveToSegments').disabled = false;
document.getElementById('divLoadingImg2').style.display = "none";
}