Иногда запоминание браузером значений, введенных / выбранных пользователем в поле формы, мало того, что неудобно, так ещё и портит корректную работу приложения. Например, если некоторое поле играет роль фильтра, работающего по onChange, то при перезагрузке страницы браузер подставит в него предыдущее введенное / выбранное значение, тогда как фильтр на самом деле не отработает, т.к. событие "change" сгенерировано не будет. Отключается это установкой нестандартизированного атрибута autocomplete в значение "off" (который может быть задан для отдельного input`а / select`а, или для формы в целом):
PS. В HTML 5 атрибут "autocomplete" для тега "input" стал стандартизированным.
<select onChange="applyFilter()" autocomplete="off">Чтобы не ломалась валидация документа на соответствие требованиям стандарта, можно расширить DTD документа следующим образом (спасибо lany):
<option ...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" [Приведенный пример можно расширить для разрешения использования атрибута "autocomplete" у тегов select и form.
<!ATTLIST input autocomplete CDATA #IMPLIED>
]>
PS. В HTML 5 атрибут "autocomplete" для тега "input" стал стандартизированным.
Комментариев нет:
Отправить комментарий