Solved

Enable button with a checkbox VB

Posted on 2008-06-17
4
2,132 Views
Last Modified: 2010-04-21
i am using VB Script. i have a check box and a disabled button. i wish to enable button when checkbox is checked and disable button when checkbox is unchecked. Here is the code I have so far:

Default.aspx
<asp:CheckBox ID="CBFlights" runat="server" Text="Flights" value="ON" onclick="enbutton()"/>
<asp:Button ID="BNFlight" runat="server" Text="Flights" Width="74px"  Enabled="False" />

Default.aspx.vb
Sub enbutton()
        If CBFlights.Checked = True Then
            BNFlight.Enabled = True
        Else
            BNFlight.Enabled = False
        End If
    End Sub

Can anyone help here - not sure what I am doing wrong :(
Thanks
0
Comment
Question by:Phesant123
  • 2
  • 2
4 Comments
 
LVL 43

Expert Comment

by:TimCottee
ID: 21801669
Hello Phesant123,

Firstly what you really want to be doing is to do this on the client-side and not on the server-side. For a simple task like this there is really no need to make a round-trip to the server.

Use the following code (assuming you are using framework 2.0 or higher, let me know if you would prefer a 1.0/1.1 version).

<asp:CheckBox ID="CBFlights" runat="server" Text="Flights" value="ON" onclientclick="document.getElementById('<%=BNFlight.ClientID()%>').disabled=!this.checked;"/>
<asp:Button ID="BNFlight" runat="server" Text="Flights" Width="74px"  Enabled="False" />

I know this is a javascript version but it is much simpler than writing a seperate function when it is not really necessary.

Regards,

TimCottee
0
 
LVL 1

Author Comment

by:Phesant123
ID: 21801721
Hi TimCottee

Thanks for your speedy reply - thats exactly what I require above but I have entered the code above:

<asp:CheckBox ID="CBFlights" runat="server" Text="Flights" value="ON" onclientclick="document.getElementById('<%=BNFlight.ClientID()%>').disabled=!this.checked;"/>
 <asp:Button ID="BNFlight" runat="server" Text="Flights" Width="74px"  Enabled="False" />

The button remains blanked out when I click in the checkbox - any ideas?
Thanks
0
 
LVL 43

Accepted Solution

by:
TimCottee earned 500 total points
ID: 21801983
Phesant123,

Seems that the checkbox for some reason doesn't have the OnClientClick attribute, you will have to do it the other way:

            CBFlights.Attributes.Add("onclick", String.Format("document.getElementById('{0}').disabled=!this.checked;",BNFlight.ClientId))

Put this in your page_load event

TimCottee
0
 
LVL 1

Author Closing Comment

by:Phesant123
ID: 31467908
Thanks TimCottee
That works perfect
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Unlike scripting languages such as C# where a semi-colon is used to indicate the end of a command, Microsoft's VBScript language relies on line breaks to determine when a command begins and ends. As you can imagine, this quickly results in messy cod…
Welcome, welcome!  If you are new to the series and haven't been following along, please take a brief moment to review the first three installments: Part 1 (http://www.experts-exchange.com/Programming/Languages/Visual_Basic/VB_Script/A_266-VBScri…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

757 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

21 Experts available now in Live!

Get 1:1 Help Now