0

I have two questions: Here's my code:

$(document).ready(function(){
 $("#diabetestype").closest("div").hide();
 $("#diabetes").on("change", function(){
   var v = $(this).val();
   if(v=="positive"){
      $("#diabetestype").closest("div").show();
   }else{
     $("#diabetestype").closest("div").hide();
   } 
 });
});
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>


<label for="diabetes">Diabetes:</label>
<select id="diabetes" name="diabetes">
<option value="negative">Negative</option>
<option value="positive">Positive</option>
</select>



<div>
<label for="diabetestype">Diabetes Type:</label>
<select id="diabetestype" name="diabetestype">
<option value="negative">Please select Diabetes Type</option>
<option value="insulin">Insulin</option>
<option value="drug">Drug</option>
</select>
</div>

When diabetes is negative still diabetes type value is negative so it's ok.

The problem is when diabetes is positive, then still diabetes type is negative if user won't change value.

How can you force a user to choose value when diabetes is positive? Or can we set an error value when diabetes is positive?

And how to retrieve data from table when for example insulin is selected as value in diabetestype selected drop down?

for example: If diabetes is positive and Diabetes Type is insulin, when we are going to change it again, still diabetes type is hidden and insulin is not selected in the value. we need to change it again from positive to negative, and from negative to positive till second drop down will be appeared, still ((diabetestype)) is selected as value not insulin

Alexander Richard
  • 191
  • 3
  • 8
  • 18
  • 1
    http://stackoverflow.com/questions/19166685/jquery-add-required-to-input-fields – mariocatch Nov 04 '15 at 01:54
  • can you elobarate this "And how to retrieve data from table when hidden drop down is selected value ?". What you mean by table here – Sridhar Gudimela Nov 04 '15 at 02:01
  • I mean, for example: If diabetes is positive and Diabetes Type is insulin, when we are going to change it again, still diabetes type is hidden and insulin is not selected in the value. we need to change it again from positive to negative, and from negative to positive till second drop down will be appeared, still ((diabetestype)) is selected as value not insulin. – Alexander Richard Nov 04 '15 at 02:07
  • `#diabetes` => `#beetus` FTW – scniro Nov 04 '15 at 02:30

1 Answers1

0

There are two ways to server your first requirement.

  1. Simply remove negative option when diabetes selected as positive by using below code and so having the 1st option as default diabetes type

       if(v=="positive"){
          $("#diabetestype option[value='negative']").remove();
          $("#diabetestype").closest("div").show();
       }
    

and on hide in your else condition you should add this $("#diabetestype").val('negative');

or 2. By having a crude model which is not a better user experience like below

$("#diabetes").on("change", function(){
           var v = $(this).val();
           if(v=="positive"){
              $("#diabetestype").focus();
              $("#diabetestype").closest("div").show();
           }else{
             $("#diabetestype").closest("div").hide();
             $("#diabetestype").val('negative');
           } 
   });
    $("#diabetestype").blur(function(){
               var v = $(this).val();
               if(v=="negative" && $("#diabetes").val() == 'positive'){
                  event.preventDefault();
                  alert('Select Diabetes Type');
                  $("#diabetestype").focus();
               } 
       });
Sridhar Gudimela
  • 564
  • 8
  • 14
  • Thanks for your answer, but its still same, you know, let me explain it to you why I've set negative in diabetestype because, when I remove it, even if diabetes is negative still insulin or drug will be selected as value thats why. you know what I meant ? – Alexander Richard Nov 04 '15 at 02:44
  • As per my method 2 solution, when you select diabetes as negative, it will go to else condition and set diabetestype val as negative. So this will avoid leaving the value as is when drug or insulin selected in case of diabetes positive. Not sure if you have checked my updated answer. I hope that answered your query. – Sridhar Gudimela Nov 04 '15 at 02:49
  • Unfortunately its still same. Thanks for your help, once I got solution for this, I'll post it here. :) – Alexander Richard Nov 04 '15 at 03:10