I have a dropdown list where the user can choose month/day/year, but to make it a bit quicker for the user i have added in the jquery datepicker, which is working ok except is there a way that once the user has selected a date from the calendar that it automatically populates the drop down fields? As i have these dropdowns set to import into my database already.
Current drop downs
<dd>
<select id="month_of_purchase" name="entry[month_of_purchase]">
<option value="">Month</option>
<option value="1">Jan</option>
<option value="2">Feb</option>
<option value="3">Mar</option>
<option value="4">Apr</option>
<option value="5">May</option>
<option value="6">Jun</option>
<option value="7">Jul</option>
<option value="8">Aug</option>
<option value="9">Sep</option>
<option value="10">Oct</option>
<option value="11">Nov</option>
<option value="12">Dec</option>
</select>
<select id="day_of_purchase" name="entry[day_of_purchase]">
<option value="">Day</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
<select id="year_of_purchase" name="entry[year_of_purchase]">
<option value="">Year</option>
<option value="2011">2011</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
</select>
</dd>
Current datepicker
$(document).ready(function(){
$("#datepicker").datepicker();
});
$(document).ready(function(){
$("#datepicker").datepicker({dateFormat: 'mm-dd-yy',
onSelect: function(dateText, inst) {
var mydate= $(this).datepicker("getDate");
$("#month_of_purchase").val(mydate.getMonth()+1);
$("#day_of_purchase").val(mydate.getDate());
$("#year_of_purchase").val(mydate.getFullYear());
}
});
});
See it working: http://jsfiddle.net/8SYsN/
try this way
JQUERY CODE:
$(document).ready(function () {
$("#tx").datepicker({
buttonImage: 'http://icongal.com/gallery/image/203336/birthday_rose_for_kdc_kdc_rose_love_flower_valentine_rose.png',
buttonImageOnly: true,
changeMonth: true,
changeYear: true,
showOn: 'both'
});
$("#tx").on('change', function () {
var dt = ($(this).val()).split('/');
var mon = dt[0];
var day = dt[1];
var year = dt[2];
$('#month_of_purchase').val(mon).attr("selected", "selected");
$('#day_of_purchase').val(day).attr("selected", "selected");
$('#year_of_purchase').val(year).attr("selected", "selected");
});
});`
HTML CODE:
<input type="hidden" id="tx" />
<select id="month_of_purchase" name="entry[month_of_purchase]">
<option value="">Month</option>
<option value="01">Jan</option>
<option value="02">Feb</option>
<option value="03">Mar</option>
<option value="04">Apr</option>
<option value="05">May</option>
<option value="06">Jun</option>
<option value="07">Jul</option>
<option value="08">Aug</option>
<option value="09">Sep</option>
<option value="10">Oct</option>
<option value="11">Nov</option>
<option value="12">Dec</option>
</select>
<select id="day_of_purchase" name="entry[day_of_purchase]">
<option value="">Day</option>
<option value="01">1</option>
<option value="02">2</option>
<option value="03">3</option>
<option value="04">4</option>
<option value="05">5</option>
<option value="06">6</option>
<option value="07">7</option>
<option value="08">8</option>
<option value="09">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
<select id="year_of_purchase" name="entry[year_of_purchase]">
<option value="">Year</option>
<option value="2011">2011</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
</select>
LIVE DEMO: http://jsfiddle.net/Un7PG/21/
EDIT 1:
only modification i have done is that, i have converted the date value from 1,2,3...
to 01,02,03......
under value attribute of option tags.
EDIT 2:
Trigger a date-picker over a image rather than a traditional text box.
Happy Coding:)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.