2011-12-07 9 views
6

Tiêu đề khá rõ ràng tôi đoán?làm cách nào tôi có thể đặt giá trị tối đa trên đầu vào ngày html5 của mình để nó có thể được nhận dạng bởi safari cho iOS?

Dưới đây là đầu vào ngày của tôi:

<input type="date" id="birthdate" name="birthdate" value="" max="1993-12-07" required/> 

Trong chrome, tôi không thể nhập một ngày vượt trội so với 1993/12/07 sử dụng các mũi tên nhỏ của lĩnh vực này (nhưng nếu tôi viết ngày bản thân mình tôi có thể).

Trong safari dành cho iOS, hãy tập trung trường đó chỉ mang lại một trình đếm ngày đẹp. Tuy nhiên, datepicker này không bị giới hạn ở thuộc tính "max". Vậy làm thế nào tôi có thể làm điều đó? Tất nhiên, tôi có một xác nhận biểu mẫu phía máy chủ nhưng tôi cũng muốn làm cho nó ở phía máy khách. Bất kỳ ý tưởng nào? Cảm ơn!

Trả lời

7

Safari chưa hỗ trợ. Chỉ Opera và Chrome hỗ trợ tính năng này vào tháng 11 năm 2011. Anyways ở đây là w3spec trên đó http://www.w3.org/TR/html-markup/input.date.html#input.date.attrs.max

Bạn có thể sử dụng xác thực js khi gửi hoặc thay đổi. Sử dụng khung xác thực js theo lựa chọn của bạn

Đây là ví dụ js thuần túy http://www.roseindia.net/answers/viewqa/Ajax/4734-start-date-and-end-date-validation-in-javascript.html. Sử dụng ngày tối đa của bạn thay vì ngày kết thúc

Đối với giải pháp jquery cái nhìn lúc này Validate that end date is greater than start date with jQuery

+1

Bây giờ, tại tháng 10 năm 2014 - điện thoại di động Safari hỗ trợ max và min vào thời điểm nào? –

+0

@VitalyZdanevich bất kỳ liên kết nào để hỗ trợ – aWebDeveloper

+0

Tôi không biết bất kỳ liên kết nào - đó là câu hỏi. –

0

Tìm thấy giải pháp cho động vô hiệu hóa ngày trong tương lai:

@{ string datestring = DateTime.Now.ToString("yyyy-MM-dd"); } 
<input type="date" 
     required="required" 
     name="AttendanceDate" 
     max="@datestring" 
     class="form-control" /> 
+0

Tính năng này hoạt động tốt trên Android, nhưng trên iOS, các thuộc tính tối thiểu và tối đa không được tính trong tài khoản – FIZLIN

Các vấn đề liên quan