2013-12-16 15 views
6

Trước đây, khi tôi đã có một biểu mẫu với một nút gửi đơn trên đó, tôi thường không đặt thuộc tính type="submit" trong đó. Tôi chưa bao giờ quan sát điều này gây ra vấn đề, và đã tin rằng "gửi" là loại mặc định cho một nút và tôi có thể dựa vào hành vi này.Tôi có cần phải chỉ định loại = "gửi" trên các nút gửi không?

Tuy nhiên, w3schools và MDN không đồng ý về việc tôi có đúng hay không.

w3schools claims:

Mẹo: Luôn luôn ghi rõ thuộc tính type cho các phần tử <button>. Các trình duyệt khác nhau có thể sử dụng các loại mặc định khác nhau cho phần tử <button>.

trong khi MDN claims:

  • submit: ... Đây là mặc định nếu thuộc tính không được xác định, hoặc nếu thuộc tính là tự động đổi thành một giá trị rỗng hoặc không hợp lệ.

Ai đúng và ai sai - cả theo thông số kỹ thuật và trong trình duyệt thực?

Trả lời

7

MDN có một số liên kết cụ thể ở gần cuối bài viết của nó, xác nhận rằng nó là chính xác: mặc định type của phần tử buttonsubmit.

W3C HTML 4.01:

type = submit|button|reset [CI]
Thuộc tính này tuyên bố các loại nút. Giá trị có thể có:

  • submit: Tạo nút gửi. Đây là giá trị mặc định.
  • reset: Tạo nút đặt lại.
  • button: Tạo nút ấn.

W3C HTML5:

Thuộc tính type kiểm soát hành vi của các nút khi nó được kích hoạt. Nó là một thuộc tính liệt kê. Bảng sau đây liệt kê các từ khóa và trạng thái cho thuộc tính - các từ khóa trong bản đồ cột bên trái cho các trạng thái trong ô trong cột thứ hai trên cùng hàng với từ khóa.

Keyword | State   | Brief description 
--------+---------------+------------------ 
submit | Submit Button | Submits the form. 
reset | Reset Button | Resets the form. 
button | Button  | Does nothing. 

Giá trị thiếu mặc định là trạng thái Nút gửi.

Điều W3Schools đang nói là bạn nên luôn chỉ định thuộc tính để đảm bảo hành vi nhất quán trên các trình duyệt nhất có thể.Điều đó không ngụ ý rằng thuộc tính không thể bỏ qua một cách hợp pháp.

+0

* Những gì W3Schools đang nói là bạn nên luôn chỉ định thuộc tính để đảm bảo hành vi nhất quán trên các trình duyệt nhất có thể. Nó không ngụ ý rằng không thể bỏ qua thuộc tính. * - Hmm. Tôi sẽ không từ thiện. Họ xác nhận quyền sở hữu * Các trình duyệt khác nhau có thể sử dụng các loại mặc định khác nhau cho phần tử '

+0

@Mark Amery: Tôi đã làm rõ tuyên bố cuối cùng của mình một chút. – BoltClock

+0

[off-topic] Có một phong trào của một vài người quan trọng nói w3schools nên bị cấm từ internet và thông số kỹ thuật w3c nên được tư vấn thay thế. – SparK

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