选择之前的日期直到今天并禁用CodeIgniter中的所有未来日期

时间:2016-08-24 11:36:29

标签: javascript php codeigniter datepicker codeigniter-2

如何从今天开始选择前几天并在我的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>
&#13;
&#13;
&#13;

我想在这里显示:

&#13;
&#13;
<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>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您是否尝试maxDate代替minDate