Tôi đang cố gắng sử dụng xác thực phía máy khách HTML5 bên ngoài ngữ cảnh biểu mẫu/gửi, nhưng không thể xem cách hiển thị bong bóng lỗi xác thực. Hãy xem xét những điều sau đây:Làm cách nào để hiển thị các bong bóng lỗi xác thực phía máy khách HTML5 theo chương trình?
<input type="text" id="input" pattern="[0-9]" required oninvalid="alert('yes, invalid')">
<button onclick="alert(document.getElementById('input').checkValidity())">Check</button>
Tất cả mọi thứ hoạt động như mong đợi, với giá trị chính xác được trả lại từ checkValidity, và sự kiện không hợp lệ được gửi và hiển thị, nhưng làm thế nào để lập trình hiển thị bong bóng lỗi xác nhận?
Cảm ơn bạn. Dường như với tôi rằng các bong bóng được ** không ** hiển thị khi checkValidity được gọi, cho dù trên phần tử hoặc trên biểu mẫu; chúng dường như chỉ được hiển thị khi biểu mẫu được gửi, có thể kết hợp với sự kiện onsubmit (bạn có thể trả về false từ trình xử lý để ngăn sự kiện thực sự được gửi). –
Câu trả lời được chấp nhận này không chính xác. Chrome 19, 20 và 21 không hiển thị bong bóng xác thực khi gọi 'element.checkValidity()'; yếu tố đầu tiên có lỗi có lỗi hiển thị trong bong bóng khi người dùng nhấp vào nút gửi biểu mẫu. –
@ScottR: xem testcase trong câu trả lời sửa đổi. Tôi không chắc tại sao bạn nghĩ câu trả lời là không chính xác. – Nickolay