Ini agak terlambat untuk menyarankan ini, mengingat sudah berapa lama pertanyaan asli diposting, tapi inilah yang saya lakukan.
Saya membutuhkan kisaran 70 tahun, yang, meskipun tidak sebanyak 100 tahun, masih terlalu banyak bagi pengunjung untuk digulirkan. (jQuery memang melalui tahun dalam kelompok, tapi itu menyebalkan bagi kebanyakan orang.)
Langkah pertama adalah memodifikasi JavaScript untuk widget datepicker: Temukan kode ini di jquery-ui.js atau jquery-ui-min.js (di mana ia akan diperkecil):
for (a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+y+".datepicker._selectMonthYear('#"+
a.id+"', this, 'Y');\" onclick=\"DP_jQuery_"+y+".datepicker._clickMonthYear('#"+a.id+"');\">";b<=g;b++)
a.yearshtml+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";
a.yearshtml+="</select>";
Dan gantilah dengan ini:
a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+y+
".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');
\" onclick=\"DP_jQuery_"+y+".datepicker._clickMonthYear('#"+a.id+"');
\">";
for(opg=-1;b<=g;b++) {
a.yearshtml+=((b%10)==0 || opg==-1 ?
(opg==1 ? (opg=0, '</optgroup>') : '')+
(b<(g-10) ? (opg=1, '<optgroup label="'+b+' >">') : '') : '')+
'<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";
}
a.yearshtml+="</select>";
Ini mengelilingi dekade (kecuali untuk saat ini) dengan tag OPTGROUP.
Selanjutnya, tambahkan ini ke file CSS Anda:
.ui-datepicker OPTGROUP { font-weight:normal; }
.ui-datepicker OPTGROUP OPTION { display:none; text-align:right; }
.ui-datepicker OPTGROUP:hover OPTION { display:block; }
Ini menyembunyikan dasawarsa sampai pengunjung melewati tahun dasar. Pengunjung Anda dapat menggulir melalui sejumlah tahun dengan cepat.
Jangan ragu untuk menggunakan ini; tolong berikan atribusi yang tepat dalam kode Anda.