Home All Groups Group Topic Archive Search About
Author
10 Oct 2006 10:05 PM
ken s
I'm using Javascript to change a value in an asp:textbox control on an
asp.net page, then submitting the page and persisting the data using c# code.
I can see the value in the textbox change when the Javascript runs, but when
the page is submitted, the c# event code still sees the original value in the
textbox, not the value that was updated by Javascript.


Here’s the javascript code that changes the value:

document.forms[0].txt1.value = calcCigScore();
alert (document.forms[0].txt1.value);

The alert shows me that the value has changed (I can also see it change on
the page).


And here’s the c# code from the SaveRecord event on the aspx page:

mIntake.CigScore = int.Parse(txt1.Text);

When tracing through the code, I see that txt1.Text still equals the value
that was originally loaded into the page.

Is there a reason why .Net doesn’t see the updated value?  Anything I can do
to change that?

Thanks

Author
11 Oct 2006 12:53 PM
Cowboy (Gregory A. Beamer)
Most likely you are running up against ViewState. Set up Page_Init() and
look at the value there. Then, check again in Page_Load (ViewState runs
between the two).

It is also possible you are rebinding in Page_Load, which happens prior to
the event handlers for controls (button submit, for example).

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA
http://gregorybeamer.spaces.live.com

*************************************************
Think outside of the box!
*************************************************
Show quoteHide quote
"ken s" <k***@discussions.microsoft.com> wrote in message
news:AB213E7F-9D3B-4CF6-83DE-8666643BC731@microsoft.com...
> I'm using Javascript to change a value in an asp:textbox control on an
> asp.net page, then submitting the page and persisting the data using c#
> code.
> I can see the value in the textbox change when the Javascript runs, but
> when
> the page is submitted, the c# event code still sees the original value in
> the
> textbox, not the value that was updated by Javascript.
>
>
> Here's the javascript code that changes the value:
>
> document.forms[0].txt1.value = calcCigScore();
> alert (document.forms[0].txt1.value);
>
> The alert shows me that the value has changed (I can also see it change on
> the page).
>
>
> And here's the c# code from the SaveRecord event on the aspx page:
>
> mIntake.CigScore = int.Parse(txt1.Text);
>
> When tracing through the code, I see that txt1.Text still equals the value
> that was originally loaded into the page.
>
> Is there a reason why .Net doesn't see the updated value?  Anything I can
> do
> to change that?
>
> Thanks
>