Solved

Update asp.net label dynamically with jquery ajax

Posted on 2008-10-22
4
6,712 Views
Last Modified: 2012-08-13
Hello experts,

I have an asp.net page that on the Page_Load method takes some value from the database and then assigns it to an asp.net Label.

.aspx
....
<body>
...
<asp:Label ID="ResultLabel1" runat="server"></asp:Label>
...
</body>

.aspx.cs
....
protected void Page_Load(object sender, EventArgs e)
{
...
resultText = ...
ResultLabel1.Text = resultText;
...
}

This value is being dynamically changed on the background, but unfortunately the only way right now to update this value is to manually reload the whole page.

I would like to implement ajax request using jquery in order to update that value on the page dynamically (let's say once in a minute) without manual reloading the whole page.

I figured out that with jquery I can use $.get to get the same page and somehow parse the returned html. I'm new to jquery and javascript itself, so unfortunately I cannot get any further...

Any ideas?
Thanks!
0
Comment
Question by:snarinsky
  • 3
4 Comments
 
LVL 19

Expert Comment

by:Albert Van Halen
Comment Utility
To get the client element from a ASP.NET server control use can use it's ClientID property.
In order to change the text of your label you can use :

$("#<%= ResultLabel1.ClientID %>").text("New text");
0
 
LVL 19

Expert Comment

by:Albert Van Halen
Comment Utility
NB This is jQuery so Clientside scripting
0
 

Author Comment

by:snarinsky
Comment Utility
Ok thanks, but how can get the value of this label from the returned page?

My idea (I'm not sure if it's right) was to do something like the following:

       $.get(
            "<current page>",                 // Somehow I need to figure out how to get current url??
            function(html)
            {
                $("#<%= ResultLabel1.ClientID %>").text("<updated value from the returned page>");      //Somehow I need to parse html of the returned page and get the new value of the ClientID label to reassign it here????
            }
0
 
LVL 19

Accepted Solution

by:
Albert Van Halen earned 500 total points
Comment Utility
So, you want to process a complete page just in order to return a specific value which is displayed in a label.
Perhaps it's better to create a handler in ASP.Net (a file with the extension ashx).
This handler will function like a classic asp page, and will return just whatever you want (ie a specific value from the database), without all the overhead of a aspx page without to extract a certain value from the page which is rendered.
Keep in mind that a handler is a standalone page and will rely on the input you are sending to it in order to process things.

Usefull link http://www.aspcode.net/Creating-an-ASHX-handler-in-ASPNET.aspx, or just google on "asp.net ashx file"
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

Suggested Solutions

In this article you'll learn how to use Ajax calls within your CodeIgniter application. To explain this, I'll illustrate how to implement a simple contact form to allow visitors to send you an email through your web site.
Introduction Knockoutjs (Knockout) is a JavaScript framework (Model View ViewModel or MVVM framework).   The main ideology behind Knockout is to control from JavaScript how a page looks whilst creating an engaging user experience in the least …
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now