Solved

jQuery - Problems checking text for acquired "selected" drop down option.

Posted on 2008-10-17
1
1,808 Views
Last Modified: 2011-10-19
I have managed to grab the text of a selected option from a drop down, but when I assign that value to a variable and run it through a conditional statement it doesn't work.  I run a "alert ( variable )" to see what value was assigned to the variable and see that it does obtain one of the conditions "true".  But an odd thing is that the "alert" window puts the text all the way to the right (SEE ATTACHED FILE) of a screen shot of what I mean.

Details:
- Drop down with: class="choice"
- Drop down contains to options: "Someone Else" and "Me" as your two choices
- By default the drop down has "Me" selected. I need to see when the drop down changes (.change(function()) if "Someone Else" was selected.

NOTE: I have an alert ( ) there to return what is in the variable so I can see myself and it always returns blank.

Here is my attempted code:

<script type="text/javascript">
jQuery.noConflict();
   jQuery(document).ready(function(){
      jQuery(".optional-field").hide();
      jQuery(".warning").hide();
          
  jQuery(".choice").change(function() {
   var choice = jQuery(".choice option:selected").text();
   alert (choice);
 
      if (choice == 'Me') {
         jQuery(".optional-field").hide();
         jQuery(".warning").hide('slow');
      } else if (choice == 'Someone Else') {
         jQuery(".optional-field").show('slow');
         jQuery(".warning").show('slow');
      }
   });
});
 
</script>

Open in new window

0
Comment
Question by:pghtech
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 16

Accepted Solution

by:
sh0e earned 125 total points
ID: 22743286

<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
jQuery.noConflict();
   jQuery(document).ready(function(){
      jQuery(".optional-field").hide();
      jQuery(".warning").hide();
          
  jQuery(".choice").change(function() {
   var choice = jQuery(".choice option:selected").text();
   alert (choice);
 
      if (choice == 'Me') {
         jQuery(".optional-field").hide();
         jQuery(".warning").hide('slow');
      } else if (choice == 'Someone Else') {
         jQuery(".optional-field").show('slow');
         jQuery(".warning").show('slow');
      }
   });
});
 
</script>
<form>
<select class="choice">
<option value="volvo">Me</option>
<option value="saab">Someone Else</option>
</select>
</form>
<div class="optional-field">optional-field</div>
<div class="warning">warning</div>

Open in new window

0

Featured Post

Don't Cry: How Liquid Web is Ensuring Security

WannaCry is just the start. Read how Liquid Web is protecting itself and its customers against new threats.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article discusses how to create an extensible mechanism for linked drop downs.
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)

617 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