2010-10-05 25 views
83

Tôi vừa nhận được yêu cầu để ngăn các trình duyệt lưu dữ liệu được nhập vào các trường biểu mẫu cụ thể. Đã nhiều năm trôi qua kể từ khi tôi thực hiện web dev, và đây là một khả năng tương đối mới. Tôi đã có thể tìm thấy thuộc tính trường biểu mẫu autocomplete = "off", nhưng tôi không thể tìm thấy bất kỳ tài liệu nào cho biết trình duyệt nào hỗ trợ nó. Bất cứ ai có thể chỉ cho tôi đi đúng hướng của một biểu đồ thuộc tính biểu mẫu và khả năng tương thích trình duyệt?Tự động hoàn thành = "tắt" có tương thích với tất cả các trình duyệt hiện đại không?

+0

Related: http://stackoverflow.com/questions/582244/is-there-a-w3c-valid-way-to-disable-autocomplete-in-a-html-form – ChristopheD

+0

Liên quan: [Liệu IE 11 bỏ qua autocomplete = “off”?] (http://stackoverflow.com/questions/18208298/does-ie-11-ignore-autocomplete-off) – techie007

+2

@camigreenall - không phải là bản sao; câu hỏi bạn đã liên kết đến cung cấp câu trả lời cho cách thực hiện; những gì tôi yêu cầu là tài liệu về khả năng tương thích của trình duyệt. – EmmyS

Trả lời

98

Lưu ý rằng tất cả các trình duyệt chính đều di chuyển về hướng ignoring the attribute for password fields.

tôi chỉ có thể đưa ra bằng chứng mang tính giai thoại, nhưng tôi chưa đi qua một trình duyệt mà không tôn trọng autocomplete="off", kinh nghiệm này bao gồm:

  • Firefox 1.5+ (Windows và Ubuntu)
  • Opera 6 + (Windows và Ubuntu)
  • Chrome v2 + (Windows và Ubuntu)
  • Epiphany 0.8 (ish) (Ubuntu)
  • Midori (tôi không thể nhớ được phiên bản)
  • Safari v1 + (Windows)
  • IE 4 - 8, Windows.

Tôi biết rằng tập lệnh Greasemonkey và có lẽ là các tập lệnh người dùng khác, có thể tắt cài đặt autocomplete.

Có một vài điều tôi thấy rằng có thể có ích cho bạn:

  1. How to turn off form auto-completion
  2. Using auto-complete in html forms
+0

Cảm ơn những bài viết đó. Tôi biết rằng có các kịch bản có thể vô hiệu hóa cài đặt, nhưng chúng tôi chỉ có thể thực hiện rất nhiều. Nếu ai đó muốn trình duyệt của họ lưu thông tin thẻ tín dụng của họ trên máy tính cá nhân của họ, chúng tôi không thể làm gì để ngăn chặn nó. Chúng tôi thực sự đang cố giữ dữ liệu không bị lưu trên các máy dùng chung. – EmmyS

+0

@EmmyS, không có sự thật. Phải mất một người dùng khá công nghệ nhận thức để đi đến những rắc rối của việc thực hiện một giải pháp chống tự động hoàn thành, và những gì người dùng * làm * với trang web của bạn trên máy của họ là xuống cho họ, không phải bạn. =) –

+0

@DavidThomas - Cảm ơn bạn đã có danh sách khả năng tương thích, không thể tìm được danh sách tốt từ caniuse, w3c hoặc ở nơi khác. :) +1 –

3

Nếu bạn có thể sử dụng JavaScript và jQuery, bạn có thể đặt này khi tải của html:

$('#theform input').val(''); 
+0

Điều này đang được sử dụng bên trong Joomla, sử dụng Mootools - có xung đột với mootools và jquery, vì vậy tôi có thể ' t làm điều đó. Tôi sẽ giữ nó trong tâm trí để tham khảo trong tương lai, mặc dù. – EmmyS

+0

tham chiếu đến tài liệu mootools bạn có thể làm $$ ('. EmptyThisInForm'). Mỗi (function (el) { el.value = ''; }); – ITroubs

+0

Mã này sẽ làm hỏng hộp kiểm và nút radio. Điều gì có thể thanh lịch hơn là '$ ('# theform') [0] .reset()' để buộc nó trở lại các giá trị mặc định được chỉ định trong HTML. –

35

Trình quản lý mật khẩu hiện đã bật quặng các autocomplete thuộc tính cho password trường trong các trình duyệt chính như của:

Nó vẫn sẽ làm việc tốt cho việc vô hiệu hóa autocomplete trên lĩnh vực hình thức , nhưng không còn ảnh hưởng đến trình quản lý mật khẩu nữa.

+0

Không. Tôi vừa thử nghiệm.Thậm chí đặt thêm 'autocomplete =" false "' vào trường biểu mẫu, ngoài một trường, đã xuất hiện trên chính phần tử biểu mẫu. Không ảnh hưởng gì. Tôi sẽ nói, tự động hoàn tất được bỏ qua bởi tất cả các trình duyệt chính. – Eugene

+1

@Eugene Nó vẫn hoạt động cho các trường tên/địa chỉ/v.v. – Manishearth

6

Kể từ Chrome v34, autocomplete="off" hiện bị bỏ qua theo mặc định.

tính năng phần nào gây tranh cãi này có thể bị vô hiệu hóa trong cấu hình cờ bằng cách truy cập chrome://flags

http://news.softpedia.com/news/Chrome-34-Seeks-to-Save-All-Your-Passwords-436693.shtml

+4

Lưu ý rằng thay đổi này trong Chrome * chỉ ảnh hưởng đến các trường mật khẩu *. ** Các trường không mật khẩu vẫn tôn trọng thuộc tính autocomplete = "off". ** –

1

Trừ Maxthon Browser Tôi nghĩ rằng, họ đang nổi tiếng tại Trung Quốc và tạo nên tên tuổi hiện nay trên toàn thế giới. Họ không xử lý Autotocomplete = off điện rất tốt. Nó sẽ không hoạt động với chúng.

+0

Có, Maxthon sẽ không tôn trọng 'autocomplete = off', nhưng bạn có thể buộc nó không tự động hoàn thành trường bằng cách đặt' ismxfilled = '0'' – GTCrais

1

Một số giải pháp không hoạt động trong các trình duyệt hiện đại.

Một liên kết giải pháp khác được cung cấp tại đây. hoạt động trong tất cả các trình duyệt hiện đại.

Input type=password, don't let browser remember the password

Bạn có thể sử dụng autocomplete = "off" trong này cho soluton

0

Matter của thực tế, cả hai lĩnh vực tên truy cập và mật khẩu không phản ứng với AutoComplete = off trong tất cả các trình duyệt mới nhất.

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