Solved

AJAX Toolkit Accordion Pane & TextBox Text

Posted on 2011-02-16
5
1,354 Views
Last Modified: 2012-05-11
I am using the AJAX Toolkit's Accordion control in a project.

In the first pane, I have an UpdatePanel.  Within that UpdatePanel is an HTML table with several TextBox Controls that receive data from a database via a class, "Profile," I have created.  The table also has a Button control which, when clicked, should update the database with the values in the TextBoxes, via the Profile class.

In the page's page_load event, I successfully target and set the values of the TextBoxes from the custom class, "Profile".

The trouble occurs when I attempt to update the database with the Button's Click event handler.  Within this event handler, I set the Profile class' properties with the values from the TextBoxes.  Strangely, the TextBox.Text properties for all of the TextBoxes return exactly the same text that was set during the Page_Load event -- NO CHANGES TO THE TEXT WITHIN THE TEXTBOXES ARE REFLECTED WHEN THE BUTTON IS CLICKED.

This is not a database issue.  I have used the debugger to step through my code and the TextBox.Text property for each of the TextBoxes has been checked.  It is the same text as originally set in the TextBoxes during the Page_Load event, and not the actual text present when the button is clicked.

Experts, any ideas as to what I'm doing incorrectly?
0
Comment
Question by:ewolsing
  • 4
5 Comments
 
LVL 11

Expert Comment

by:SAMIR BHOGAYTA
ID: 34913514
0
 

Author Comment

by:ewolsing
ID: 34913567
samirbhogayta:

Yes, I've seen that link.  It was the page I used as reference when I initially created the Accordion control on my page.  Unless I missed it, it does not cover my issue.

For some reason, the TextBoxes within the accordion control are not registering any updated text, beyond what was initially set in the Page_Load event, when the Button's Click event is raised.
0
 

Accepted Solution

by:
ewolsing earned 0 total points
ID: 34920524
I solved the problem after much Googling.

Because the controls I was attempting to access resided in an AJAX UpdatePanel, the Page_Load event was being fired before the Button_Click event containing the code for retrieving and updating the values in the TextBoxes.  Therefore, the fields were being re-populated with the original values from the database before the SQL Update command was being issued.  That is why the fields appeared to not reflect changes made prior to the button click.

My ultimate solution was to place the code filling the TextBoxes in the Page_Load event into an IF statement checking if the page was experiencing a postback.  Hence:

Protected Sub Page_Load(Byval sender as Object, byval e as System.EventArgs) Handles Me.Load
     If Not Page.IsPostBack Then
          PopoulateFields()
     End if
End sub
0
 

Author Comment

by:ewolsing
ID: 34920568
I have answered my own question.
0
 

Author Closing Comment

by:ewolsing
ID: 34949809
I answered my own question.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
OverviewThis article demonstrates a simple search form using AJAX. The purpose of the article is to demonstrate how to use the same code to render a page and javascript (JQuery) and AJAX to make subsequent calls to refine the results. The princip…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.

809 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