I used the date selection in Ctrip Hotel reservation.
There are a few interesting phenomena.
Users should know that it is impossible to book yesterday's Room today. For example, today is December 8, you can only start from today's room, can not book yesterday's room. If you "choose" December 7, the site will be prompted "check-in time can not be earlier than 200-12-8."
Because of the design reason, the user can enter the date according to the certain format, the user cannot select the past date from the calendar, but can still enter, so the user will "select" a past date.
If the user chooses to stay today, leave the shop today, the website will prompt "Check-out time can not be earlier than or equal to check-in time" and similar information. In other words, similar to Ctrip's website does not provide rental booking on the day.
The site can not predict the user to choose which day to stay, which day away from the shop, so give a hint is also very reasonable. But is this informational information really necessary? Is that really reasonable? Is there a better way?
It's a good idea to tell the user in advance what the date is today. However, this does not prevent user input errors.
There is another important situation users do not know, that is the maximum occupancy time of 28 days! The actual situation is the user "chooses" which day to check in, the calendar does not have the corresponding change, is still only the inflexible later displays, the user may "choose" to live two months or even longer, but finally obtains the result is "the check-in time period cannot exceed 28 days"!
In this sense, the user to fill out the date is meaningless, because the longest only 28 days, on the calendar is enough to choose, such as January, up to only February, March calendar shows meaningless.
Can you not allow users to enter them yourself? Maybe not. If the speed is too slow, the calendar will not load properly? This extreme situation must be considered. As long as it is technically possible, always allow the user to enter.
Hotel reservation, the date is essential.
The first thing to do is to highlight the date, the calendar is too small, easy to dazzle, the mouse is easy to point wrong. Why can't you make the calendar a few times bigger?
But the user input, you can produce errors, and how to solve? This does not discuss the wrong date format entered by the user. One thing is obvious, the user "choose" the wrong date, unavoidable, the user wants is 15th, the result is 16th, this and the user chose 7th, from the results of no essential difference. If there is an essential difference, why does the website not ask the user "Do you really choose to stay at number 15th?" ”
At this point, the 7th date can be automatically changed from 8th to start, the Check-out date (including the issue of day rental) can also do similar processing. Of course, you must explicitly tell the user what happened to the date, and you must always highlight the date.
More interesting is that Ctrip in the English version of the date choice and the Chinese version is not the same.