2012-11-22 39 views
5

<button> dễ tạo kiểu hơn đầu vào và tôi thực sự có lợi khi sử dụng chúng. Tuy nhiên tôi sợ một số vấn đề có thể phát sinh.Sử dụng <button type = "submit"> để thay thế <input type = "submit"> để gửi biểu mẫu, sự cố? Các thẻ

Từ W3Schools: Note: If you use the <button> element in an HTML form, different browsers may submit different values. Use <input> to create buttons in an HTML form.

Tôi cũng đọc rằng IE có vấn đề với các nút này. Tôi chỉ đang tìm cách sử dụng chúng làm thay thế cho các nút gửi, ví dụ:

<form> 
<input type="text" name="post"/> 
<button type="submit"> 
</form> 

Chúng có hoạt động giống như nút gửi hoặc tôi có vấn đề như trình duyệt không được hỗ trợ hay bất kỳ thứ gì khác không?

+3

[Chỉ như một đề xuất không dựa quá nhiều vào W3Schools ...] (http://w3fools.com/) – DarkAjax

+0

Không phải là tôi không đồng ý với w3schools ở đây, nhưng không phụ thuộc vào thông tin của họ. http://w3fools.com/ – Curt

Trả lời

2

Phần tử button đã gặp sự cố nghiêm trọng với IE, đã từng có triển khai rất bị hỏng. Điều này vẫn còn là một mối quan tâm. Theo số MDN page on button, IE 7 vẫn rất bị hỏng về mặt này, gửi dữ liệu sai khi gửi.

Nhưng nếu xử lý biểu mẫu của bạn không phụ thuộc vào dữ liệu tên = giá trị kết quả từ yếu tố button, button type=submit là an toàn trong những ngày này. Ví dụ: khi bạn chỉ có một nút như vậy trong biểu mẫu, có thể bạn sẽ không sử dụng cặp name = value cho bất kỳ điều gì.

+0

Vì vậy, về cơ bản nếu tôi không sử dụng tên và giá trị thuộc tính s (mà tôi không có kế hoạch sử dụng) nó là ok cho IE7? – lisovaccaro

+0

@ Liso22, phải. –

1

Tôi chưa gặp phải bất kỳ sự cố nào về IE với <button type="submit"> và ở mức rất tồi tệ hơn, bạn luôn có thể đính kèm một trình xử lý sự kiện onclick cho nó.

A <button> nên an toàn để sử dụng.

Lưu ý cuối cùng: w3schools là trang web sai và gây nhầm lẫn. Bạn không nên sử dụng nó làm tài liệu tham khảo cho bất kỳ loại ngôn ngữ nào. Đối với PHP, có PHP Manual, đối với JavaScript, có Mozilla Developer Network (or MDN). Xem http://w3fools.com để hiểu thêm lý do tại sao bạn không bao giờ nên sử dụng w3schools.

+0

Cảm ơn, về cơ bản Nó sẽ hoạt động trên tất cả các trình duyệt được chứ? Vì nó dành cho những người trẻ tuổi, tôi không nghĩ rằng tỷ lệ IE7 hoặc lớn hơn sẽ là quá lớn nhưng tôi muốn hỗ trợ nó – lisovaccaro

+0

@ Liso22: Vâng, nó sẽ hoạt động. –

-1

Nếu bạn sử dụng

 

    <input type="submit" name="whatever" /> 
 

bạn có thể yên tâm nó hoạt động như tốt như nút đối tác; bạn sẽ không gặp sự cố không tương thích với trình duyệt.
Và nó cũng không kém phần phong cách.

Hy vọng điều này sẽ hữu ích.

+3

Nó không phải là một cách dễ dàng. Nó không hỗ trợ: trước và sau khi nó không có nội dung bên trong. Ngoài ra một số trình duyệt bỏ qua kiểu dáng của các nút gửi như safari của iOS. Tôi biết tôi có thể sử dụng nhưng tôi muốn biết hậu quả của việc sử dụng

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