Question on textbox property.

G

Guest

Hi. I've also posted this at another discussion board and here is the
original question.

-------------------------
"I have this problem and I don't know what I can do. First of all, I have a
page with [ok] and [cancel] button, and 5 <asp:TextBox>'s and when an user
makes changes to each of the textbox content, javascript client side code is
triggered to change the textbox background color property to some other
color. My problem is when I click on the save button(server side), I get a
pop up window (like a message box but it's just a another browser) that ask
if you would like to save. At this point, if [cancel] is selected, the window
will close and the original page with those textbox will show. However, all
the colors that were changed by client side code is now lost because of
postback to server. Is there anyway to keep the textbox control's property
such as (textbox1.style.backgroundColor) when performing postback. What I
tried so far is to store each of the control's name in hidden value
("textbox1;textbox4") but, can't do anything about it further once I have it
on the server side. Is there any other way to achieve this. Any help would
be appreciated. Thanks."

Henry
 
B

bruce barker

you are on the right track. onpostback, read the hidden field, and set the
style in serverside code. alternately do in client side code, on postback
render a call to client script that does it.

-- bruce (sqlwork.com)


| Hi. I've also posted this at another discussion board and here is the
| original question.
|
| -------------------------
| "I have this problem and I don't know what I can do. First of all, I have
a
| page with [ok] and [cancel] button, and 5 <asp:TextBox>'s and when an user
| makes changes to each of the textbox content, javascript client side code
is
| triggered to change the textbox background color property to some other
| color. My problem is when I click on the save button(server side), I get
a
| pop up window (like a message box but it's just a another browser) that
ask
| if you would like to save. At this point, if [cancel] is selected, the
window
| will close and the original page with those textbox will show. However,
all
| the colors that were changed by client side code is now lost because of
| postback to server. Is there anyway to keep the textbox control's
property
| such as (textbox1.style.backgroundColor) when performing postback. What I
| tried so far is to store each of the control's name in hidden value
| ("textbox1;textbox4") but, can't do anything about it further once I have
it
| on the server side. Is there any other way to achieve this. Any help
would
| be appreciated. Thanks."
|
| Henry
|
 
S

Steve Lutz

Alternatively, you could write Javascript code that gets run on Window's
OnLoad event. This will "re-play" the color coding of the text boxes based
on the current values. Does the server NEED to know about the color changes?
If so, this approach will not work.

Also, when you change the colors, you could also write cookies in
Javascript. When posting back, the cookies will be sent to the server. The
page then needs to read the cookies determine the colors. This approach will
work if it's required that the server know about the color coding. You can
do a quick google on something like "write cookie javascript" to get sample
code on writing the cookies.

Hope that helps

Steve
 
G

Guest

Thanks for the reply. Since I'll do this setting while in page_load
routine, how would I go about setting my server-side textbox control's style
base on what I have in my hidden value?

Protected WithEvents textbox1 As System.Web.UI.WebControls.TextBox
Protected WithEvents textbox2 As System.Web.UI.WebControls.TextBox
Protected WithEvents textbox3 As System.Web.UI.WebControls.TextBox
Protected WithEvents textbox4 As System.Web.UI.WebControls.TextBox

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
If Not Me.IsPostBack Then

Else
Dim myArray As Array
' assuming that Request.Form("hidChangedCol") is "textbox1:textbox4"
myArray = Split(Request.Form("hidChangedCol"), ":")
For j = 0 To myArray.Length - 2
''???????? textbox style settings..such as textbox1.Style("BackColor") =
"Red", etc...
Next
End If

End Sub


Or alternately, could you please clarify what you mean by client side code
from postback? Thanks again.

Henry.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,756
Messages
2,569,533
Members
45,007
Latest member
OrderFitnessKetoCapsules

Latest Threads

Top