Dziwne input type="date"
jest to, że po tym czasie wciąż nie jest obsługiwany w przeglądarce Firefox. W rzeczywistości nie sądzę, aby dodali wiele (jeśli w ogóle) nowych typów HTML 5 do elementu wejściowego. Nic dziwnego, że nie jest obsługiwany w IE10. Więc moje pytanie brzmi ...
Jak dostać się type="date"
na input
obróbkę elementów bez dodając kolejny, js plik (mianowicie jQueryUI
DatePicker widget), aby dostać się do kalendarza / datę tylko IE i Firefox przeglądarek? Czy jest coś, co można gdzieś zastosować (być może CDN?), Co sprawi, że ta funkcja będzie działać domyślnie w przeglądarkach Firefox i / lub IE? Próbowanie kierowania na przeglądarki IE 8+ i Firefox nie ma znaczenia, najnowsza wersja (28.0) będzie w porządku.
AKTUALIZACJA: Firefox 57+ obsługuje typ danych wejściowych = data
Odpowiedzi:
Możesz wypróbować webshimy , które są dostępne na cdn +, ładuje tylko polifill, jeśli jest to potrzebne.
Oto demo z CDN: http://jsfiddle.net/trixta/BMEc9/
Jeśli domyślna konfiguracja nie spełnia wymagań, istnieje wiele sposobów jej konfiguracji . Tutaj znajdziesz konfigurator datepicker .
Uwaga: Chociaż w przyszłości mogą pojawić się nowe wersje poprawek dla webshim. Nie będzie już żadnych większych wydań. Obejmuje to obsługę jQuery 3.0 lub dowolne nowe funkcje.
źródło
Jest w przeglądarce Firefox od wersji 51 (26 stycznia 2017 r.), Ale domyślnie nie jest aktywowany (jeszcze)
Aby go aktywować:
about: config
dom.forms.datetime -> ustawione na true
https://developer.mozilla.org/en-US/Firefox/Experimental_features
źródło
Jest prosty sposób na pozbycie się tego ograniczenia za pomocą składnika datePicker dostarczonego przez jQuery.
Dołącz biblioteki jQuery i jQuery UI (nadal używam starej)
Użyj następującego snipa
Zobacz jQuery UI DatePicker - w razie potrzeby zmień format daty .
źródło
Typ = „data” nie jest w tym momencie faktyczną specyfikacją. Jest to koncepcja, którą wymyślił Google i jest zgodna ze specyfikacjami whatwg (nieoficjalna) i jest tylko częściowo obsługiwana przez Chrome.
http://caniuse.com/#search=date
W tym momencie nie polegałbym na tym typie danych wejściowych. Byłoby miło mieć, ale nie przewiduję, że ten faktycznie go stworzy. Powodem nr 1 jest to, że nakłada zbyt duże obciążenie na przeglądarkę, aby określić najlepszy interfejs użytkownika dla nieco skomplikowanych danych wejściowych. Pomyśl o tym z responsywnego punktu widzenia, skąd którykolwiek ze sprzedawców wiedziałby, co będzie najlepiej działać z twoim interfejsem użytkownika przy 400, 800 i 1200 pikseli szerokości?
źródło
Oto pełny przykład z datą sformatowaną w RRRR-MM-DD
źródło
Chociaż nie pozwala to uzyskać interfejsu użytkownika datepicker, Mozilla zezwala na użycie wzorca, więc możesz przynajmniej uzyskać weryfikację daty za pomocą czegoś takiego:
Ostatecznie zgadzam się z @SuperUberDuper, że Mozilla jest daleko w tyle, jeśli chodzi o włączenie tego natywnie.
źródło
To tylko sugestia wynikająca z odpowiedzi Daxa. (Chciałbym umieścić go w komentarzu do tej odpowiedzi, ale nie mam jeszcze wystarczającej reputacji, aby komentować inne pytania).
Identyfikatory powinny być unikalne dla każdego pola, więc jeśli masz wiele pól daty w formularzu (lub formularzach), możesz użyć elementu class zamiast identyfikatora:
i twój wkład jako:
Teraz za każdym razem, gdy potrzebujesz selektora dat, po prostu dodaj tę klasę. PS Wiem, nadal musisz używać js :(, ale przynajmniej jesteś ustawiony na całą swoją stronę. Moje 2 centy ...
źródło
Najnowsza wersja firefoxa firefox 57 (Quantum) obsługuje datę i inne funkcje, które zostały wydane 14 listopada 2017 r. Możesz go pobrać, klikając ten link
źródło
Dzięki Alexander, znalazłem sposób na modyfikację formatu en lang. (Nie wiedziałem, który język używa takiego formatu)
źródło
Czasami nie chcesz używać Datepicker http://jqueryui.com/datepicker/ w swoim projekcie, ponieważ:
Proszę zobaczyć mój bardzo prosty kod przeglądarki dla wprowadzania daty. Mój kod ma zastosowanie tylko wtedy, gdy twoja przeglądarka nie obsługuje wprowadzania typu daty
źródło
Oto właściwe rozwiązanie. Powinieneś wszędzie używać JQuery Datepicker
Poniżej znajduje się link do uzyskania pełnego kodu
https://tutorialvilla.com/how/how-to-solve-the-problem-of-html-date-picker
źródło
Oto idealne rozwiązanie. Powinieneś używać JQuery datepicker do wprowadzania danych przez użytkownika. Jest bardzo łatwy w użyciu i ma wiele funkcji, których nie ma w danych wejściowych HTML.
Kliknij tutaj, aby skopiować kod wyboru daty JQuery
źródło
Musiałem użyć
bootstrap-datepicker
wtyczki, aby kalendarz działał w przeglądarce Firefox 55 Portable:https://bootstrap-datepicker.readthedocs.io/en/latest/
Kompatybilny z Bootstrap v2 i v3. Jest dostarczany z niezależnym arkuszem stylów, więc nie musisz polegać na Bootstrap.
Stosowanie:
<input class="datepicker">
źródło
źródło