2016-06-02 4 views
1

Ich habe ein sehr einfaches Problem. Aber ich kann das Problem nicht lösen.Wie man Datepicker bei Auswahl ändern einstellt?

Ich möchte Datepicker auf einen Eingang bei Auswahl ändern. Wenn Sie die Option "Select to Other" ändern, sollte der Datepicker entfernt werden und nur das Textfeld angezeigt werden. falsch

Dies ist, was ich habe

bisher versucht
jQuery(document).ready(function(){ 

        jQuery('#filevalidity').change(function(){ 
         var option = jQuery(this).find("option:selected").val(); 
         if(option === "MAX_DOWNLOAD_LIMIT") 
         { 

          jQuery('#dlorex').next('input').datepicker("destroy"); 
         } 
         if(option === "EXPIRY_DATE") 
         { 

          jQuery('#dlorex').next('input').datepicker({minDate : 1}); 
         } 
        }); 

       }); 

Here is the fiddle

Wohin gehe ich? .

Antwort

1

next() bekommt die Geschwister auf dem gleichen Niveau (in diesem Fall gleiches Niveau wie tr)

Sie find() die input Ziel verwenden können. Außerdem haben Sie einige Tags nicht richtig geschlossen.

Hier gehen Sie:

jQuery(document).ready(function() { 
 

 
    jQuery('#filevalidity').change(function() { 
 
    var option = jQuery(this).find("option:selected").val(); 
 
    if (option === "MAX_DOWNLOAD_LIMIT") { 
 

 
     jQuery('#dlorex').find("input[name='downlimit']").datepicker("destroy"); 
 
    } 
 
    if (option === "EXPIRY_DATE") { 
 

 
     jQuery('#dlorex').find("input[name='downlimit']").datepicker({ 
 
     minDate: 1 
 
     }); 
 
    } 
 
    }); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet" /> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script> 
 
<div id="general"> 
 
    <table width="100%"> 
 

 
    <tr> 
 
     <td>File Validity:</td> 
 
     <td> 
 
     <select name="filevalidity" id="filevalidity"> 
 
      <option value="MAX_DOWNLOAD_LIMIT">Download Limit</option> 
 
      <option value="EXPIRY_DATE">Expiry Date</option> 
 
     </select> 
 
     </td> 
 
    </tr> 
 
    <tr id="dlorex"> 
 
     <td> 
 
     <label>Download Limit</label> 
 
     </td> 
 
     <td> 
 
     <input type="text" name="downlimit" /> 
 
     </td> 
 
    </tr> 
 

 
    </table> 
 
</div>

Fiddle:http://jsfiddle.net/ktjsyfg0/4/

+0

Warum wird die .next() Methode nicht funktioniert? – Nishant123

+0

'jQuery ('# dlorex'). Next ('input')' sucht nach 'input' auf der gleichen Ebene wie 'tr', was in Ihrem Code nicht der Fall ist –

-1

$ ("date ") picker ({ onSelect: function (dateText) { Anzeige (" Datum ausgewählt:" + dateText + "; Eingangsstrom Wert:" + this.value); } });