2013-05-20 6 views
5

Mam pole tekstowe (w formularzu) ustawione tak, aby wyświetlało datepicker jQuery UI na fokusie.Zapobiegaj używaniu datepicker jQuery UI w celu zmiany wartości pola tekstowego, jeśli jest poza zasięgiem

Używając PHP (na ekranie aktualizacji) zapełniam wartość tego pola tekstowego (gdy strona ładuje się) za pomocą ciągu dat na podstawie danych poprzedniego użytkownika końcowego dla danego rekordu.

Mój problem polega na tym, że ustawiłem mój datepicker za pomocą opcji minDate i maxDate, które ograniczają ingerencję w oryginalną wartość wyświetlaną w moim polu tekstowym.

Jeśli ciąg pola tekstowego jest mniejszy niż wartość minimalna, pole tekstowe zostanie ustawione na wartość minDate.

Potrzebuję pierwotnej wartości, aby pozostała niezmieniona, nawet jeśli wypadnie poza zakresem kalendarza (wartości minDate lub maxDate), chyba że zmiana została wykonana przez użytkownika z kalendarza.

przykład:

minDate: 01-04-2013 (dd-mm-yy) 
maxDate: 30-04-2013 (dd-mm-yy) 
Original text field value: 16-03-2013 (dd-mm-yy) 
Displayed text field value: 01-04-2013 (dd-mm-yy) 

Chodzi o to, że opcje minDate i MaxDate ograniczenia końcowego użytkownika do wejścia/modyfikacji danych w pewnym zdefiniowanym okresie od bieżącej.

Używam jQuery UI Datepicker 1.8.16 i biblioteki jQuery JavaScript v1.6.2. Przeglądarki: Internet   Explorer   7 i nowsze wersje, Firefox

+2

Czy to zorientowali się w ogóle? Mam ten sam problem. – phazei

+0

Niestety, nie ... – yhammad

+0

Mój najlepszy zakład (według niektórych postów, które czytam) jest taki, że niektórzy ludzie wiążą funkcję z opcją "beforeShowDay", aby włączyć określone daty (http://articles.tutorboy.com/2010/09/03/jquery-ui-datepicker-disable-defined-dates /). Próbowałem powrócić true, jeśli data w kalendarzu jest zgodna z pierwotną datą lub leży między przedziałem dat i fałszem w przeciwnym razie. Nigdy nie pracował dla mnie. – yhammad

Odpowiedz

Powiązane problemy