Tìm vấn đề về biểu mẫu với Công cụ của Chrome cho nhà phát triển

Nhóm Công cụ của Chrome cho nhà phát triển đang xây dựng các tính năng mới bổ sung để giúp bạn tìm thấy vấn đề về biểu mẫu và gỡ lỗi tính năng Tự động điền.

Trong Chrome Canary, chúng tôi đang thử nghiệm các tính năng mới trong Công cụ cho nhà phát triển nhằm giúp nhà phát triển hiểu được cách hoạt động của tính năng Tự động điền biểu mẫu và lý do đôi khi tính năng này không thành công:

  • Trình duyệt tự động điền các giá trị được lưu trữ với các trường trong biểu mẫu như thế nào?
  • Tính năng Tự động điền sử dụng những tiêu chí nào để điền vào một trường trong biểu mẫu?
  • Những trường nào chưa được tính năng Tự động điền điền?
  • Tại sao tính năng Tự động điền không điền vào trường trên biểu mẫu?

Bài viết này trình bày các tính năng mới trong Công cụ của Chrome cho nhà phát triển, đồng thời giải thích cách bạn có thể kiểm thử các tính năng đó và đưa ra ý kiến phản hồi.

Tự động điền là gì?

Chrome giúp người dùng quản lý địa chỉ, thông tin thanh toán và thông tin đăng nhập bằng cách lưu trữ an toàn các tập dữ liệu và có thể điền vào các trường của biểu mẫu mà không cần người dùng nhập văn bản. Tính năng này được gọi là Tự động điền.

Chrome đề xuất lưu dữ liệu Tự động điền khi bạn gửi biểu mẫu. Trên thiết bị di động:

3 ảnh chụp màn hình Android: một biểu mẫu địa chỉ trong Chrome, tính năng Tự động điền của Chrome đề xuất lưu địa chỉ, sau đó hiển thị hộp thoại để chỉnh sửa mục nhập Tự động điền mới.

Sau đó, Chrome đề xuất tự động điền vào biểu mẫu bằng dữ liệu đã lưu.

Trên thiết bị di động:

Trên máy tính:

Chrome đề xuất tự động điền biểu mẫu địa chỉ trên máy tính

Bạn có thể quản lý dữ liệu Tự động điền trong phần cài đặt của Chrome.

Trên thiết bị di động:

Cài đặt Chrome trên Android: chỉnh sửa địa chỉ

Trên máy tính:

trang chrome://settings/address, hiển thị hai địa chỉ mẫu

Cũng có thể bạn đã thấy Chrome đề xuất nội dung đề xuất cho các trường nhập dữ liệu không liên quan đến địa chỉ, thẻ tín dụng hoặc dữ liệu đăng nhập. Ngoài việc cung cấp tính năng Tự động điền cho các tập hợp dữ liệu có cấu trúc như địa chỉ và thông tin thanh toán, Chrome còn giúp người dùng tránh nhập lại dữ liệu cho các trường duy nhất trong biểu mẫu mà tính năng Tự động điền không thể xử lý. Khi biểu mẫu có trường có thuộc tính tên mà Chrome từng gặp, Chrome có thể đề xuất các giá trị để bạn không cần nhập lại dữ liệu.

Sau đây là một ví dụ đơn giản:

Chrome cung cấp các nội dung đề xuất cho dữ liệu không có cấu trúc trong một trường biểu mẫu

Công cụ của Chrome cho nhà phát triển cho thấy trường biểu mẫu ở đây không có các thuộc tính có ý nghĩa đối với trình duyệt. Thay vào đó, đây chỉ là một thuộc tính name của n300.

Công cụ của Chrome cho nhà phát triển hiển thị thông tin về dữ liệu không có cấu trúc dưới dạng một biểu mẫu, như minh hoạ trong ví dụ trước: một dữ liệu đầu vào chỉ có thuộc tính type=text và name=n300.

Trường này không tương ứng với một giá trị trong tập dữ liệu có cấu trúc phù hợp với tính năng Tự động điền của Chrome, nhưng Chrome vẫn có thể trợ giúp người dùng nếu sau này gặp một trường có tên này.

Kiểm thử các tính năng Tự động điền mới cho Công cụ của Chrome cho nhà phát triển

Chrome đang thử nghiệm các tính năng mới cho bảng điều khiển Vấn đề của Công cụ cho nhà phát triển để giúp gỡ lỗi các sự cố Tự động điền.

Bạn có thể dùng thử các tính năng mới này trong Chrome Canary. Kiểm tra phần Cài đặt Cài đặt. > Thử nghiệm > Hộp đánh dấu. Làm nổi bật một nút hoặc thuộc tính vi phạm trong cây DOM của bảng điều khiển Phần tử trong DevTools và tải lại Công cụ cho nhà phát triển khi được nhắc.

Trang cài đặt Công cụ của Chrome cho nhà phát triển, hiển thị "Đánh dấu một nút vi phạm ..."

Ngoài ra, bạn có thể chạy Chrome Canary từ dòng lệnh bằng cờ AutofillEnableDevtoolsIssues:

  • Windows: shell start chrome --restart --flag-switches-begin --enable-features=AutofillEnableDevtoolsIssues
  • Máy Mac: shell open -a "Google Chrome Canary" --args --restart --flag-switches-begin --enable-features=AutofillEnableDevtoolsIssues

Để kiểm tra xem có vấn đề gì không, hãy mở bảng điều khiển Vấn đề cho công cụ cho nhà phát triển trên một trang có biểu mẫu. form-problems.glitch.me là nơi phù hợp để bắt đầu.

Công cụ của Chrome cho nhà phát triển cho thấy vấn đề về thuộc tính for của phần tử biểu mẫu.

Như bạn có thể thấy, biểu mẫu này khá là lộn xộn! Có:

  • Các trường nhập dữ liệu không có thuộc tính id hoặc name.
  • Các phần tử có mã nhận dạng trùng lặp.
  • <label> có thuộc tính for không khớp với mã phần tử.
  • Trường có thuộc tính autocomplete trống.

Di chuột qua một phần tử được đánh dấu trong cây DOM và nhấp vào Xem vấn đề để tìm hiểu thêm.

Vấn đề mở rộng trong Công cụ của Chrome cho nhà phát triển: Sử dụng nhãn cho thuộc tính không đúng cách.

Nhấp vào Nút vi phạm để xem các tài nguyên bị ảnh hưởng cho từng vấn đề. Biểu mẫu này có 8 nhãn với thuộc tính for không khớp với id của một trường trong biểu mẫu.

Sử dụng Công cụ cho nhà phát triển để cải thiện khả năng hỗ trợ tiếp cận của biểu mẫu

Công cụ cho nhà phát triển cũng có thể làm nổi bật các vấn đề về hỗ trợ tiếp cận Tự động điền, chẳng hạn như một trường biểu mẫu không có thuộc tính aria-labelledby hoặc <label> liên kết.

Bảng điều khiển Hỗ trợ tiếp cận trong Công cụ của Chrome cho thấy rằng đã tìm thấy một nhãn cho phần tử đầu vào trong một biểu mẫu.

Trong ví dụ này, phần tử <input> có nhãn phù hợp. Tức là các thiết bị hỗ trợ có thể cho biết mục đích của phần tử. Tuy nhiên, trong ví dụ sau, hệ thống không tìm thấy nhãn hoặc thuộc tính aria-labelledby trùng khớp.

Bảng điều khiển Hỗ trợ tiếp cận trong Công cụ của Chrome cho nhà phát triển cho thấy không tìm thấy nhãn trùng khớp hoặc thuộc tính được gắn nhãn aria cho một phần tử dữ liệu đầu vào trong một biểu mẫu.

Đưa ra ý kiến phản hồi về các tính năng Tự động điền mới trong Công cụ cho nhà phát triển

Sử dụng các lựa chọn sau đây để thảo luận về các tính năng mới và thay đổi trong bài đăng hoặc bất cứ vấn đề nào khác liên quan đến Công cụ cho nhà phát triển:

  • Hãy gửi đề xuất hoặc ý kiến phản hồi cho chúng tôi thông qua lỗi ô trên crbug.com.
  • Báo cáo sự cố từ Công cụ cho nhà phát triển: Tuỳ chọn khác > Trợ giúp > Báo cáo sự cố của Công cụ cho nhà phát triển.
  • Tweet tại @ChromeDevTools.

Tìm hiểu thêm

  • Tìm hiểu về Biểu mẫu: Một khoá học về biểu mẫu HTML giúp bạn nâng cao kiến thức chuyên môn về nhà phát triển web. Phù hợp với bất cứ ai mới sử dụng biểu mẫu và tính năng Tự động điền.
  • web.dev/tags/forms: Hướng dẫn, các phương pháp hay nhất và lớp học lập trình, về các biểu mẫu thanh toán, đăng nhập và địa chỉ.