Precessing----Please wait message

I am querying a database with huge data,which takes time to display the records.Mean while I would like to display message(or image) saying Procesing plz wait.
thanks,
LVL 5
kolluAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

tusharashahCommented:
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
hendridmCommented:
Here's a snippet I threw together.  When the user clicks the button, javascript causes the "Please Wait" message to be visible:


<script runat="server">
      private void Page_Load(object sender, System.EventArgs e)
      {
            btnSubmit.Attributes.Add("onclick", "document.getElementById('msgWait').style.display='block'");
      }
</script>

<form runat="server">
   <asp:Button id="btnSubmit" runat="server" Text="Submit" onclick="btnSubmit_Click" /></p>
</form>

<div id="msgWait" style="display:none; color: red"><p>Please wait.  This may take up to a minute...</p></div>
0
AerosSagaCommented:
First, create a basic page that asks a user for their name and provides them a button to submit the page. The code behind the button is pretty simple:

Response.Redirect("EndPage.aspx?name=" & Name.Text)

Next, create a simple page that sleeps the thread for 10 seconds to simulate a long running process. After the thread wakes up, the page updates a label to welcome the user. The code looks like this:

System.Threading.Thread.Sleep(10000)
Label1.Text = "Welcome " & Request.QueryString("Name") & "!"

If you run these two pages, you'll find that when you click on the submit button, the browser sits on the start page for 10 seconds without any feedback to the user. Now modify the start-page code to redirect to an intermediary loading page. This page provides your end user with visual notification that the application is processing their request. Here's the new code behind on the submit button:

Dim URL As String = "EndPage.aspx?name=" & Name.Text
Response.Redirect("Loading.Aspx?Page=" & URL)

The previous code now captures the original URL and passes it on the query string to the loading page, Loading.Aspx. The loading page then displays to the user a status message while loading the requested page.
First, start by creating a basic message for your user:

<table border="0" cellpadding="0" cellspacing="0"
  width="99%" height="99%" align="center"
  valign="middle">
    <tr>
          <td align="center" valign="middle">
    <font color="Red" size="5">
      <span id="Message">Loading&nbsp;--
                  Please Wait</span>
      <span id="Progress" style="WIDTH:25px;
                    TEXT-ALIGN:left"></span>
    </font>
          </td>
   </tr>
</table>

Inside the table at the middle of the screen, you want to display a message to the user. You'll use JavaScript's Progress span tag here to update the screen and inform the user that the application is responding.

Now that the screen is set up, you need to hook up the JavaScript to make the page work using the client-side onLoad and onUnload events:

<body onload="BeginPageLoad()" onunload="EndPageLoad()">

When the page is loaded, your custom BeginPageLoad function is fired. BeginPageLoad has two lines of JavaScript:

location.href = "<%= Request.QueryString("Page")%>";
iIntervalId = window.setInterval("iLoopCounter=
  UpdateProgress(iLoopCounter, iMaxLoop)", 500);

The first line of code starts the loading processes for the requested page. After the page has been requested from the server, a call to the UpdateProgress function starts a timer that updates the screen. This function uses the Progress span tag and displays five dots in succession. When the fifth dot is added, the span is cleared and the process starts over. Once the new page is finished loading, it is rendered immediately for the user and the EndPageLoad function will be processed. The EndPageLoad function then performs some basic clean-up and notifies the user if the transfer fails or an error occurs:

window.clearInterval(iIntervalId);
Progress.innerText = "Page Loaded -- Not Transferring";

As you can see, you need only a few lines of JavaScript to provide the user with visual notification that their request has been submitted and is being processed. By providing the user with this feedback, you can help eliminate the possibility that the user will cancel the page request and attempt to resubmit the page or hit the submit button repeatedly, possibly corrupting your data or bringing down the application.

Aeros
0
roit_comp4Commented:
I have 2 aspx page. on one page there exist only one button. on other page there exist one datagrid.
when i press first page button i want Please wait screen appear when data is filled in datagrid on other page this Please wait screen disappear.

Thanks,
Prateek
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
ASP.NET

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.