Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   ASP .Net Building Controls (http://www.velocityreviews.com/forums/f59-asp-net-building-controls.html)
-   -   Disabled textbox is nothing on postback :o( (http://www.velocityreviews.com/forums/t758435-disabled-textbox-is-nothing-on-postback-o.html)

M O J O 06-29-2006 07:28 PM

Disabled textbox is nothing on postback :o(
 
I need to use Request.Form.AllKeys to get values of my textboxes, but
disabled textboxes are not shown.

Here's my code...

<%

@ Page Language="VB" %>
<!

DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<

script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
Handles Me.Load
ListBox1.Items.Clear()
If Page.IsPostBack Then
For Each s As String In Request.Form.AllKeys
ListBox1.Items.Add(New ListItem(s))
Next
End If
End Sub
</script>
<

html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtDisabled" runat="server"
Enabled="False">abcd</asp:TextBox><br />
<asp:TextBox ID="txtEnabled"
runat="server">abcd</asp:TextBox><br />
<asp:Button ID="Button1" runat="server"
Text="Button" /><br /><br />
<asp:ListBox ID="ListBox1"
runat="server"></asp:ListBox>
</div>
</form>
</body>
</html>


Click the button and watch the listbox ... the disabled control is not there.

I need to get values of disabled controls from inside a webcontrol (not user
control). I'm having problems using the FindControl method.

Any idea why the disabled controls are not showing??

Thanks!

Mojo


Jesse Houwing 06-29-2006 11:29 PM

Re: Disabled textbox is nothing on postback :o(
 
M O J O wrote:
> I need to use Request.Form.AllKeys to get values of my textboxes, but
> disabled textboxes are not shown.
>
> Here's my code...
>
> <%
>
> @ Page Language="VB" %>
> <!
>
> DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <
>
> script runat="server">
> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
> Handles Me.Load
> ListBox1.Items.Clear()
> If Page.IsPostBack Then
> For Each s As String In Request.Form.AllKeys
> ListBox1.Items.Add(New ListItem(s))
> Next
> End If
> End Sub
> </script>
> <
>
> html xmlns="http://www.w3.org/1999/xhtml" >
> <head runat="server">
> <title>Untitled Page</title>
> </head>
> <body>
> <form id="form1" runat="server">
> <div>
> <asp:TextBox ID="txtDisabled" runat="server"
> Enabled="False">abcd</asp:TextBox><br />
> <asp:TextBox ID="txtEnabled"
> runat="server">abcd</asp:TextBox><br />
> <asp:Button ID="Button1" runat="server"
> Text="Button" /><br /><br />
> <asp:ListBox ID="ListBox1"
> runat="server"></asp:ListBox>
> </div>
> </form>
> </body>
> </html>
>
>
> Click the button and watch the listbox ... the disabled control is not there.
>
> I need to get values of disabled controls from inside a webcontrol (not user
> control). I'm having problems using the FindControl method.
>
> Any idea why the disabled controls are not showing??


It's in the protocol. If you make the field readonly instead of disabled
the value will come over to the server side. I guess it was done to
prevent unneeded data transfers, bandwidth was scarce a few years back :)

Jesse

Steve C. Orr [MVP, MCSD] 06-30-2006 12:38 AM

Re: Disabled textbox is nothing on postback :o(
 
That is standard HTML behavior unfortunately. You'll likely want to cache
the value somewhere else, such as in Viewstate or in a hidden textbox.

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://SteveOrr.net


"M O J O" <MOJO@discussions.microsoft.com> wrote in message
news:A94842D2-214E-423F-964B-DDF2BE704950@microsoft.com...
>I need to use Request.Form.AllKeys to get values of my textboxes, but
> disabled textboxes are not shown.
>
> Here's my code...
>
> <%
>
> @ Page Language="VB" %>
> <!
>
> DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <
>
> script runat="server">
> Protected Sub Page_Load(ByVal sender As Object, ByVal e As
> System.EventArgs)
> Handles Me.Load
> ListBox1.Items.Clear()
> If Page.IsPostBack Then
> For Each s As String In Request.Form.AllKeys
> ListBox1.Items.Add(New ListItem(s))
> Next
> End If
> End Sub
> </script>
> <
>
> html xmlns="http://www.w3.org/1999/xhtml" >
> <head runat="server">
> <title>Untitled Page</title>
> </head>
> <body>
> <form id="form1" runat="server">
> <div>
> <asp:TextBox ID="txtDisabled" runat="server"
> Enabled="False">abcd</asp:TextBox><br />
> <asp:TextBox ID="txtEnabled"
> runat="server">abcd</asp:TextBox><br />
> <asp:Button ID="Button1" runat="server"
> Text="Button" /><br /><br />
> <asp:ListBox ID="ListBox1"
> runat="server"></asp:ListBox>
> </div>
> </form>
> </body>
> </html>
>
>
> Click the button and watch the listbox ... the disabled control is not
> there.
>
> I need to get values of disabled controls from inside a webcontrol (not
> user
> control). I'm having problems using the FindControl method.
>
> Any idea why the disabled controls are not showing??
>
> Thanks!
>
> Mojo
>




Rick Strahl 07-08-2006 11:08 PM

Re: Disabled textbox is nothing on postback :o(
 
Actually ReadOnly also doesn't return the value either.

I posted a BLOG entry about this some time ago and there were quite a few
useful comments there as well:

http://west-wind.com/weblog/posts/3939.aspx

+++ Rick ---

--

Rick Strahl
West Wind Technologies
http://www.west-wind.com/weblog
http://www.west-wind.com/wwThreads/


"Jesse Houwing" <jesse.houwing@nospam-sogeti.nl> wrote in message
news:%23a40MP9mGHA.1760@TK2MSFTNGP03.phx.gbl...
>M O J O wrote:
>> I need to use Request.Form.AllKeys to get values of my textboxes, but
>> disabled textboxes are not shown.
>>
>> Here's my code...
>>
>> <%
>>
>> @ Page Language="VB" %> <!
>>
>> DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <
>>
>> script runat="server">
>> Protected Sub Page_Load(ByVal sender As Object, ByVal e As
>> System.EventArgs) Handles Me.Load
>> ListBox1.Items.Clear()
>> If Page.IsPostBack Then
>> For Each s As String In Request.Form.AllKeys
>> ListBox1.Items.Add(New ListItem(s))
>> Next
>> End If
>> End Sub
>> </script> <
>>
>> html xmlns="http://www.w3.org/1999/xhtml" >
>> <head runat="server">
>> <title>Untitled Page</title>
>> </head>
>> <body>
>> <form id="form1" runat="server">
>> <div>
>> <asp:TextBox ID="txtDisabled" runat="server"
>> Enabled="False">abcd</asp:TextBox><br />
>> <asp:TextBox ID="txtEnabled"
>> runat="server">abcd</asp:TextBox><br />
>> <asp:Button ID="Button1" runat="server"
>> Text="Button" /><br /><br />
>> <asp:ListBox ID="ListBox1"
>> runat="server"></asp:ListBox>
>> </div>
>> </form>
>> </body>
>> </html> Click the button and watch the listbox ... the disabled control
>> is not there.
>>
>> I need to get values of disabled controls from inside a webcontrol (not
>> user control). I'm having problems using the FindControl method.
>>
>> Any idea why the disabled controls are not showing??

>
> It's in the protocol. If you make the field readonly instead of disabled
> the value will come over to the server side. I guess it was done to
> prevent unneeded data transfers, bandwidth was scarce a few years back :)
>
> Jesse



Jesse Houwing 07-08-2006 11:34 PM

Re: Disabled textbox is nothing on postback :o(
 
* Rick Strahl wrote, On 9-7-2006 1:08:
> Actually ReadOnly also doesn't return the value either.
>
> I posted a BLOG entry about this some time ago and there were quite a
> few useful comments there as well:
>
> http://west-wind.com/weblog/posts/3939.aspx


That is a bug in .NET then, as the value is posted back from a HTML/HTTP
point of view, but thank you for pointing this out.

Jesse


All times are GMT. The time now is 01:14 AM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.