2016-08-24 83 views
1

如何从今天启用前几天的选择并禁用CodeIgniter视图中的未来日期?现在我的代码显示了所有未来的日期,并禁用了以前的所有日期。我的代码如下:选择之前的日期直到今天并禁用CodeIgniter中的所有未来日期

<script> 
 
var elem = document.getElementById("security_question_1"); 
 

 
elem.onchange = function() { 
 
    var hiddenDiv = document.getElementById("showMe"); 
 
    hiddenDiv.style.display = (this.value == "Absconding") ? "none":"none"; 
 
    hiddenDiv.style.display = (this.value == "Termination") ? "none":"block"; 
 
    hiddenDiv.style.display = (this.value == "Employee Initiated") ? "none":"block"; 
 
}; 
 

 
function parseDate(str) { 
 
    var mdy = str.split('/') 
 
    return new Date(mdy[2], mdy[0]-1, mdy[1]); 
 
} 
 

 
function daydiff(first, second) { 
 
    return Math.round((second-first)/(1000*60*60*24)); 
 
} 
 

 
$(document).ready(function() { 
 
    $("#startdt").datepicker({ 
 
     dateFormat: 'dd-mm-yy', 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     showButtonPanel: true, 
 
     yearRange: "-90:+0", 
 
     startDate: new Date(), 
 
     autoclose: true 
 
    }).on('changeDate', function (selected) { 
 
     var minDate = new Date(selected.date.valueOf()); 
 
     $('#enddt').datepicker('setStartDate', minDate); 
 
    }); 
 

 
    $("#sincedt").datepicker({ 
 
     dateFormat: 'dd-mm-yy', 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     showButtonPanel: true, 
 
     yearRange: "-90:-10", 
 
     startDate: new Date(), 
 
     autoclose: true 
 
    }).on('changeDate', function (selected) { 
 
     var minDate = new Date(selected.date.valueOf()); 
 
     $('#enddt').datepicker('setStartDate', minDate); 
 
    }); 
 

 
    $("#enddt").datepicker({ 
 
     dateFormat: 'dd-mm-yy', 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     showButtonPanel: true, 
 
     yearRange: "-90:+0" 
 
    }); 
 

 
    $("#enddtt").datepicker({ 
 
     dateFormat: 'dd-mm-yy', 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     showButtonPanel: true, 
 
     yearRange: "-90:+0" 
 
    }); 
 

 
    $("#enddttt").datepicker({ 
 
     dateFormat: 'dd-mm-yy', 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     showButtonPanel: true, 
 
     yearRange: "-90:+0" 
 
    }); 
 

 
    $("#enddt").change(function(){ 
 
     if($("#startdt").val()!='' && $("#enddt").val()!='') { 
 
      var startdt = $("#startdt").val(); 
 
      var enddt = $("#enddt").val(); 
 
      $("#daysleave").val(daydiff(parseDate(startdt), parseDate(enddt))); 
 
      if($("#grievance_type").val()!='0') { 
 
       var day_diff_today = daydiff(parseDate($("#today_dt").val()), parseDate($("#startdt").val())); 
 

 
       if(((parseInt($("#daysleave").val()) > parseInt($("#grievance_type option:selected").attr("data-min"))) && (parseInt($("#daysleave").val()) < parseInt($("#grievance_type option:selected").attr("data-max"))))&&(day_diff_today > parseInt($("#grievance_type option:selected").attr("data-approvaldays")))) { 
 
       } else { 
 
        $("#leaveAllowedModal").modal("show"); 
 
       } 
 
      } 
 
     } 
 
    }) 
 

 
    $("#grievance_type").change(function() { 
 
     if($("#startdt").val()!='' && $("#enddt").val()!='' && $("#grievance_type").val()!='0') { 
 
      var day_diff_today = daydiff(parseDate($("#today_dt").val()), parseDate($("#startdt").val())); 
 

 
      if(((parseInt($("#daysleave").val()) > parseInt($("#grievance_type option:selected").attr("data-min"))) && (parseInt($("#daysleave").val()) < parseInt($("#grievance_type option:selected").attr("data-max"))))&&(day_diff_today > parseInt($("#grievance_type option:selected").attr("data-approvaldays")))) { 
 
      } else { 
 
       $("#leaveAllowedModal").modal("show"); 
 
      } 
 
     } 
 
    }) 
 

 
    $(".date-picker").datepicker(); 
 

 
    $("#optionsRadios1").click(function() { 
 
     $("#myLTAModal").modal("show"); 
 
    }) 
 

 
    $('#leaveAllowedModal').on('shown.bs.modal', function() { 
 
     var msg = ''; 
 
     if((parseInt($("#daysleave").val()) > parseInt($("#grievance_type option:selected").attr("data-min"))) && (parseInt($("#daysleave").val()) < parseInt($("#grievance_type option:selected").attr("data-max")))) { 
 
     } else { 
 
      msg = msg + "You wish you apply "+$("#daysleave").val()+" day of "+$("#grievance_type option:selected").text()+". Minimum and Maximum no. of Leaves allowed to take at a time are "+$("#grievance_type option:selected").attr("data-min")+" and "+$("#grievance_type option:selected").attr("data-max")+" respectively."; 
 
     } 
 
     var day_diff_today = daydiff(parseDate($("#today_dt").val()), parseDate($("#startdt").val())); 
 
     if((day_diff_today < parseInt($("#grievance_type option:selected").attr("data-approvaldays")))) { 
 
      msg = msg + " No. of days of prior approval needed is " + $("#grievance_type option:selected").attr("data-approvaldays") + " days"; 
 
     } 
 
     $(".allowed_text").html(msg); 
 
    }) 
 
}); 
 
</script>

我想在这里显示出来:

<tr> 
 
    <td> 
 
     <label>Absconding Since</label> 
 
    </td> 
 
    <td> 
 
     <div class="date" data-date="12-02-2012" data-date-format="mm-dd-yyyy" data-date-viewmode="years"> 
 
     <input placeholder="Absconding Since" class=" m-wrap col-md-8 form-control " id="startdt" type="text" name="abscondingsince" value="<?php if($row->requested_date!='') echo date("d-m-Y",$row->requested_date); ?>" required/> 
 
    </td> 
 
</tr>

回答

0

你有没有尝试maxDate,而不是minDate

+0

是的,但它不起作用 – shank

+0

有什么问题? –

+0

以前的所有日期都被禁用了 – shank

相关问题