You've used HTML forms extensively in the past three chapters, and forms will undoubtedly play an important role in the applications you build. HTML forms are pretty easy to create and work with, but they're also very limited and not overly capable. For example:
Making fields required, or enforcing data validation, requires the use of client-side scripting (which may not be supported or enabled) or server-side processing (which isn't very user-friendly).
There is no easy way to extend data types, for example, to display a pop-up calendar to allow simple date selection or to ensure that dates are entered correctly.
Form presentation tends to be very ...