jQuery for Web Designers
Illustration by John Hersey

Solution: Dynamic contact form


From:

jQuery for Web Designers

with Joe Chellman

Start your free trial now, and begin learning software, business and creative skills—anytime, anywhere—with video instruction from recognized industry experts.

Start Your Free Trial Now

Video: Solution: Dynamic contact form

In this challenge, we needed to toggle whether these check boxes were enabled or disabled based on the state of this check box and then make the forms submit to different places based on these radio buttons. So first, let's make sure that this thing actually works. So we can see that the page has loaded, and all of these check boxes, no matter how much I would like to click them, are disabled. Click this check box, or its label even, and all of these are enabled or disabled as appropriate. You can check all these, and if I go back up here, and uncheck this box, they're all disabled again. They keep their check state, but they are disabled.
Expand all | Collapse all
  1. 2m 17s
    1. Welcome
      1m 4s
    2. What you should know
      37s
    3. Using the exercise files
      36s
  2. 11m 59s
    1. jQuery is a JavaScript library?
      1m 15s
    2. When to use jQuery
      2m 51s
    3. Alternatives to jQuery
      1m 24s
    4. Which version of jQuery to use
      1m 50s
    5. How to install jQuery
      3m 21s
    6. Reference materials
      1m 18s
  3. 19m 19s
    1. Getting ready
      2m 26s
    2. Selecting elements to use
      3m 54s
    3. Performing multiple operations on the same line with chaining
      2m 30s
    4. Using classes to find what you're looking for
      3m 52s
    5. Adding, modifying, and removing content dynamically
      4m 3s
    6. Challenge: Form feedback
      1m 12s
    7. Solution: Form feedback
      1m 22s
  4. 18m 28s
    1. Triggering a change based on activity with event binding
      4m 37s
    2. Reading and changing values
      4m 17s
    3. Working with HTML attributes
      4m 55s
    4. Challenge: Dynamic contact form
      1m 27s
    5. Solution: Dynamic contact form
      3m 12s
  5. 16m 42s
    1. Using the Colorbox plugin to build a slideshow gallery
      4m 22s
    2. Implementing Colorbox on your site
      2m 46s
    3. Changing Colorbox options
      5m 53s
    4. Challenge: Convert to a slideshow
      1m 6s
    5. Solution: Convert to a slideshow
      2m 35s
  6. 28m 37s
    1. Using jQuery or CSS to animate elements
      2m 24s
    2. Creating simple jQuery animations
      4m 35s
    3. Animating numeric properties with animate()
      4m 56s
    4. Understanding animation easing
      4m 4s
    5. Putting it together: Flowers in the cart
      6m 4s
    6. Callbacks: What to do when the animation ends
      3m 27s
    7. Challenge: Improve the animation
      1m 3s
    8. Solution: Improve the animation
      2m 4s
  7. 4m 45s
    1. More fun plugins
      2m 38s
    2. What's next: More jQuery
      50s
    3. What's next: More JavaScript
      1m 17s

please wait ...
Watch the Online Video Course jQuery for Web Designers
1h 42m Intermediate Oct 31, 2013

Viewers: in countries Watching now:

Take the next step in your web design career with jQuery, which amplifies JavaScript's power and puts a library of prebuilt functions and a diverse selection of plugins at web designers' fingertips. This course explains what jQuery is, how to install it, and use it to script more interesting, interactive websites. Author Joe Chellman will show you how to use jQuery to add web form usability, audio and video, animation, and other features like slideshow galleries to your existing HTML and CSS-based webpages.

Check out JavaScript for Web Designers for more detailed instruction on JavaScript.

Topics include:
  • What is jQuery?
  • Installing jQuery
  • Performing multiple operations with chaining
  • Using classes
  • Adding, modifying, and removing content dynamically
  • Triggering a change with event binding
  • Creating a dynamic contact form
  • Building a slideshow gallery
  • Creating simple jQuery animations
Subject:
Web
Software:
jQuery
Author:
Joe Chellman

Solution: Dynamic contact form

In this challenge, we needed to toggle whether these check boxes were enabled or disabled based on the state of this check box and then make the forms submit to different places based on these radio buttons. So first, let's make sure that this thing actually works. So we can see that the page has loaded, and all of these check boxes, no matter how much I would like to click them, are disabled. Click this check box, or its label even, and all of these are enabled or disabled as appropriate. You can check all these, and if I go back up here, and uncheck this box, they're all disabled again. They keep their check state, but they are disabled.

Then if I submit this, right now if I ask for monthly discounts, I submit it, I go to contacts submitted, I say no thanks. I go to the other place. Okay. Let's see how this thing is put together, so here I am in contact.htm and I'll jump down to the bottom to javascript. Ok, so first of all, I am selecting all of these checkboxes using this class that surrounds them. And then, I'm asking for all the input whose type is checkbox inside that group. I'm going to be doing a few things to these checkboxes so I save them in a very well site, don't have to make the selection over and over again.

And I'm setting the disable property on everything is this group to true. I could have theoretically done this right in the HTML, but I like doing it this way, because then if JavaScript happens to be disabled, I figure it's probably better for people to be able to ask for information for things that they don't deserve not owning a bike, rather than preventing them from being able to ask for anything at all. Depending on your relationship with your client, they may want you to make a different choice but that's what I went for here. Next, I'm looking at the bike check checkbox and I've added a click event listener to it, and then I'm using this to refer back to it because I'm going to use it multiple times down here in my code.

So there is at least a couple of different ways that you could do this. What I'm doing is look at it's checked property and asking, is it true? And then, if so, setting disabled to false; therefore, enabling the check boxes. Then, in my other statement other here. So, if this is false, I'm disabling them again. So, if this is checked, enable everything. If it is not checked, disable everything. And I do this every time that box is clicked. So this is one way to do this. There is a slightly clever way which fits on one line. In this case, I'm setting the disabled property of all those checkboxes to the opposite using this not operator of what ever the toggle is.

So if this is checked I want disable to be set to false so checked is true disabled is false, checked is false disable is true its just a little slightly clever way. Moving on I'm now looking at the two radio buttons each of which has an ID. And then every time one of them is clicked I can set these in separate event listeners because they are not both going to be clicked at once. So, when I click the no radio button; therefore, opting out of the newsletter, it's also selected for me by the browser, and then I am setting the action attribute which is where the form submits of my web form to the page with the response that says nothing about you having subscribed to the mailing list.

And then I'm just doing the opposite for the other one, setting it back to the default which is the one has the message thanking you for subscribing. And so that's how it all breaks down. Disabling all these checkboxes when the page first loads, then doing the toggle here, and setting the action attribute on the form depending on which of these has been clicked.

There are currently no FAQs about jQuery for Web Designers.

 
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ .

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now Already a member? Log in

* Estimated file size

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed jQuery for Web Designers.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member ?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferences from the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Learn more, save more. Upgrade today!

Get our Annual Premium Membership at our best savings yet.

Upgrade to our Annual Premium Membership today and get even more value from your lynda.com subscription:

“In a way, I feel like you are rooting for me. Like you are really invested in my experience, and want me to get as much out of these courses as possible this is the best place to start on your journey to learning new material.”— Nadine H.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.