EDIT: từ Firefox 57, <input type="date"/>
là partially supported.
Firefox doesn't support HTML5's <input type="date"/>
.
Bạn có hai lựa chọn:
- luôn luôn sử dụng một datetime picker Javascript, hoặc
- kiểm tra nếu trình duyệt là hỗ trợ thẻ rằng, nếu có sử dụng nó, nếu không có thì dự phòng trên một datepicker javascript (jQuery hoặc một số khác).
Đây được gọi là Feature Detection và Modernizr là thư viện phổ biến nhất cho việc này.
Sử dụng luôn luôn là một datepicker javascript là dễ dàng hơn và nhanh hơn nhưng nó sẽ không làm việc với Javascript bị vô hiệu (ai quan tâm), nó sẽ làm việc rất xấu trên điện thoại di động (điều này rất quan trọng) và nó sẽ có mùi cũ.
Sử dụng phương pháp kết hợp thay thế sẽ cho phép bạn bao quát mọi trường hợp ngay bây giờ, cho đến khi mọi trình duyệt sẽ hỗ trợ trình đếm ngày HTML5 theo cách được chuẩn hóa và không cần javascript. Đó là tương lai-proof, và this is especially important in mobile browsing, nơi javascript datepickers gần như không sử dụng được.
Đây là một cú đá ra ví dụ để làm điều đó trên mỗi <input type="date"/>
yếu tố của mỗi trang tự động:
<script>
$(function(){
if (!Modernizr.inputtypes.date) {
// If not native HTML5 support, fallback to jQuery datePicker
$('input[type=date]').datepicker({
// Consistent format with the HTML5 picker
dateFormat : 'yy-mm-dd'
},
// Localization
$.datepicker.regional['it']
);
}
});
</script>
Nó sử dụng jQuery vì tôi sử dụng jQuery, nhưng bạn có thể tự do thay thế những phần jQuery với vani javascript, và phần datepicker với một datepicker javascript của sự lựa chọn của bạn.
Nguồn
2015-05-28 10:27:38
hoàn toàn phụ thuộc vào phiên bản trình duyệt .. [Kiểm tra điều này] (http://caniuse.com/#search=date) – Rayon
Bản sao có thể có của [Cách nhận kiểu nhập HTML 5 = "ngày" làm việc trong Firefox và/hoặc IE 10] (http://stackoverflow.com/questions/22983013/how-to-get-html-5-input-type-date-working-in-firefox-and-or-ie- 10) – rdans