Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jquery datepicker set minDate based-on data-attribute ($(this).attr())

Page Body

<div>Project Name</div>
<div>Project Scopes Details</div>
<div id="scopeFrame">
    <div id="scope01">
        <div>Scope1 Name</div>
        <div>Start Date: 1 June 2015</div>
        <div>Completed Date: <input id="completed_date_1" class="completed_date" type="text" data-mindate="1-6-2015" /></div>
    </div>

    <div id="scope02">
        <div>Scope1 Name</div>
        <div>Start Date: 15 June 2015</div>
        <div>Completed Date: <input id="completed_date_2" class="completed_date" type="text" data-mindate="15-6-2015" /></div>
    </div>

    <div id="scope03">
        <div>Scope1 Name</div>
        <div>Start Date: 22 June 2015</div>
        <div>Completed Date: <input id="completed_date_3" class="completed_date" type="text" data-mindate="22-6-2015" /></div>
    </div>
</div>

Script

$(document).ready(function() {
// SET jQuery UI calender for completion date
    $('.completed_date').datepicker({
        dateFormat: "dd MM yy",
        minDate: new Date($(this).attr('data-minDate')), // min date is scope start date
        maxDate: new Date(), // max date is ToDay, current date;
    });
});

Some how i am unable to get the min-date for date-picker. Mindate is the scope start date which i have set as data-mindate in the complete date text box. any suggestions ?

like image 473
Ramyz Avatar asked Sep 16 '26 11:09

Ramyz


1 Answers

try this

<script>
$(document).ready(function(){
$.each($('.completed_date'), function() {
    var mindate = $(this).attr('data-minDate');
   $(this).datepicker({
        dateFormat: "dd MM yy",
        minDate: new Date(mindate),
        maxDate: new Date(), // max date is ToDay, current date;
    });
});

});

</script>
</head>
<body>
<div>Project Name</div>
<div>Project Scopes Details</div>
<div id="scopeFrame">
    <div id="scope01">
        <div>Scope1 Name</div>
        <div>Start Date: 1 June 2015</div>
        <div>Completed Date: <input id="completed_date_1" class="completed_date" type="text" data-mindate="02 February 2016" /></div>
    </div>

    <div id="scope02">
        <div>Scope1 Name</div>
        <div>Start Date: 15 June 2015</div>
        <div>Completed Date: <input id="completed_date_2" class="completed_date" type="text" data-mindate="12 February 2016" /></div>
    </div>

    <div id="scope03">
        <div>Scope1 Name</div>
        <div>Start Date: 22 June 2015</div>
        <div>Completed Date: <input id="completed_date_3" class="completed_date" type="text" data-mindate="14 February 2016" /></div>
    </div>
</div>
like image 71
Mitali Avatar answered Sep 18 '26 01:09

Mitali



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!