Solved

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

Posted on 2008-10-17
1
1,790 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
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

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

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

PROBLEM: The other day I was working on adding an ajax request to a webpage that already had a dialog box on the page.  The dialog box was using relative positioning to be positioned next to a form field I had on the page.  Everything was working…
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)

786 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