Error Handling with Radio Buttons

I have a form that asks 8 questiosns. After each question is a yes and a no radio button.

Each radio button is required.

If the user selects Yes for any of the questiosns, he or she must give information in a text box below concerning why he or she answered yes.

My question is:

1. How can I show the user in a pop up box (Like the ones the user recieves when he inputs a wrong character or wrong sysntax for a text box) that he or she needs to enter a explaination when a Yes is clicked.

I am already using Validation for all my text boxs (ie. phone, email etc). I would like to stay with that type of pop up message, instead of showing the message on another screen.

Thank you
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.


 Pop-ups (even javascript ones) give a poor user experience.   I understand your wanting to be consitent, but if this is not an error and simply information, do not give them a pop-up just to tell them they need to enter information.   Save the alert if they fail to enter the field when clicking submit..   Avoid using it in advance of a problem, the user would quickly become annoyed.

 The following will make the text field appear on the screen if YES is checked.  Along with it, a little message "Please Explain."   I think it would be enough simply to enable and disable the Please explain field, but you wanted a message so I am doing the magical appearing block which will get the users to notice..

 <script type="text/javascript">
   function hide(id) {
   document.getElementById(id).style.visibility = "hidden";

   function show(id) {
   document.getElementById(id).style.visibility = "visible";

  <input type="checkbox"  onClick="if (this.checked ) hide('Q7')"> No

  <input type="checkbox"  onClick="if (this.checked) show('Q7')"> Yes

  <div id="Q7" style="visibility:hidden">
    Please Explain<br>
    <input type="text" name="Q7explain" size=50>

Experts Exchange Solution brought to you by ConnectWise

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
linder76Author Commented:
This is an error.

What needs to happen is that once the user press "Continue" the code already goes through and gives pop up errors to the text boxs that do not meet the validation requirements.
I would like that to happen to, within the same pop up window, if possible so the user sees all the errors he or she needs to correct.

Thank you,

 so then you just need to know if the checkbox is checked before checking if the corresonding text field is filled?

 something like this... ?

 if (document.getElementById('Q7Checkbox').checked && 
     document.getElementById('Q7textField').value = '') { alert('please fill out Q7') }

Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

linder76Author Commented:
Yes I also need to check if the text box has something in it...the text box is called explaination..

If I was writing in VBA it would go something like:

If C1='yes' then
 If explaination = "" then

 mgsbox "If you selected yes to any questions, please give an explaination in the text box below"
end if
end if

Also where would I put this code?
linder76Author Commented:
See what I am trying to do is...

Once the continue button is checked....

The text boxes are checked ...and if they are not filled in correctly a error pops up - that is working fine
Second, now the radio buttons need to be checked to see if any are yes if there are any that have yes then the explaination text box needs to be checked. If there is nothing in the text box, that is when  message needs to come up, or be part of the other other error text box


 Ok, maybe I don't know what you are referring to by a "pop-up" box.  
  I thought you were referring to a javascript alert window.

>> I am already using Validation for all my text boxs (ie. phone, email etc).

   What language are you using to check all the fields you already have?  

linder76Author Commented:
yes sorry, in CF for inputboxes there is a validation setion..if the user violates the validation a "pop box" shows the user the is not java script it is a built in function...

 Ok, very easy then, its all coldfusion

 <cfif IsDefined('form.C1') and form.C1 is 'Yes' and len(form.explaination) eq 0>
  ... do whatever you do to add a message to this message box ....


  This assumes that the name of the checkbox is C1.   If a checkbox is not checked the form variable will not exist, so you need to make sure its defined.  Len(  )  checks the number of characters in the variable,  if it returns 0, the field is empty...

   I don't know how you're creating or populating this "pop-up" box... but add to it in the <CFIF....

linder76Author Commented:
Sorry for the confusion

The pop up box is coming from this code

Inputbox type = "text"
Validate = "integer"
Message ="Please only enter integers"

Now once the user presses "continue" (the submit button) if the user for example puts a letter in this text box..that is when a pop up box comes up and says the message.

I hope this helps

 The block you provided doesn't give any indication of the language or how its called, its not "native" coldfusion.

 If its coldfusion,  such as a custom tag.. then just call it between the CFIF statements I provided..

 It would look something like this...

<cf_Inputbox type = "text"
       Validate = "integer"
        Message ="Please only enter integers">

 Perhaps you can paste in a block of your code.  
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.