2013-04-11 5 views
7

Zgodnie z tym problematic example, nie mogę uzyskać strzałek w górę iw dół, aby wybrać datę wcześniejszą niż 2001 lub późniejszą niż 2021 .dlaczego moja wtyczka do pobierania dat jQuery nie pokazuje strzałek w górę/w dół w polu roku

Education Record 
    did you complete high school? * --> Yes 
    clicking Graduation Date * 
     clicking 2013 down arrow 

example

jakieś pomysły co jest przyczyną tego? Strzałki przewijania nie pojawiają się wcale w IE10 w Windows 7, aw Firefoksie strzałki przewijania są pokazane, ale nie można ich przewinąć przed rokiem 2001 ani po 2021. Praca polega na wybraniu daty min. Lub maks. I kliknięciu strzałki pokazać przed lub po latach.

+1

Mam paski przewijania, ale wydaje się, że to zakres lat. nie widzisz ich, ponieważ tak się składa, że ​​na ekranie lista może rozciągać się na całej wysokości, aby pokryć wszystkie opcje. – TheBrain

+0

@TheBrain: Tak, edytowałem moje pytanie. – Jawad

+0

możesz dodać atrybut 'size =" 5 "' do tego wyboru, który będzie pokazywał tylko wysoką listę 5 elementów i będziesz miał paski przewijania – TheBrain

Odpowiedz

2

Jak widać na Twoim zrzucie ekranu, używasz IE10, który ma trochę dziwaczny styl. Wybrana lista rozwijana będzie działała poprawnie w dobrych przeglądarkach, takich jak Chrome, FF, Safari itp. . Jestem pewien, że jeśli ustawisz stałą wysokość dla wybranego elementu, który ma
.ui-datepicker-rok klasy, dla przykładowa wysokość: 150 pikseli; i dodaj przepełnienie: auto; nadzieję, że to pomaga

+0

, które nie pokazują wszystkich lat – Jawad

+0

jaki jest sens pokazania strzałek, jeśli chcesz wyświetlić listę wszystkich lat? – Mahmoud

9

Spróbuj this- jsFiddle

$(function() { 
$("#datepicker").datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    yearRange: "-120:+10", // magic! 
    dateFormat: 'mm/yy', 
    onClose: function (dateText, inst) { 
     var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
     var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
     $(this).datepicker('setDate', new Date(year, month, 1)); 
    } 
    }); 
}); 

API Documentation for yearRange

+1

Tak, wartość domyślna dla 'yearRange' wynosi od -10 do +10 lat. To najlepsza odpowiedź. – jmm

+0

ładne i proste –

2

w jQuery-UI można łatwo określić rok wahają i domyślna data.

$("#specific_birthdate").datepicker({ 
     yearRange : "1950:2011", 
     changeYear : true, 
     defaultDate : new Date(1970, 0, 1, 0, 0, 0, 0) 
    }); 
Powiązane problemy