Довольно трудно описать проблему в заголовке. Но попробую описать подробнее тут. Те, кто сталкивался с веб-разработкой, возможно, замечали странное поведение элемента select в в форме: если выбрать какие-то пункты и нажать F5 на странице, то эти пункты после обновления будут все еще выбраны. В исходное состояние они придут после нажатия Ctrl+F5.
Есть случаи, когда это крайне неудобно. Например: если на странице несколько завязанных друг на друга элемента select, получающие данные аяксом. В исходном состоянии это выглядит так:
Есть случаи, когда это крайне неудобно. Например: если на странице несколько завязанных друг на друга элемента select, получающие данные аяксом. В исходном состоянии это выглядит так:
То есть после выбора страны - появляется регион, после выбора региона появляется список городов.
И если после того как выбраны пункты мы нажмем F5, то увидим следующую картину:
А сами списки зависимых элементов будут пустыми и активными:
С одной стороны - можно при загрузке страницы через JS проверять состояние элементов и производить нужные действия. Но с другой стороны есть решение проще - для каждого элемента, где необходимо "корректное" поведение нужно атрибутом прописать autocomplete="off"
<select name="region" id="region_id" autocomplete="off">
<option>Москва и Московская область</option>
<option>...</option>
</select>
Лично мне помогло отлично. Если будет что сказать - прошу в комментарии =)
3 коммент.:
Firefox 29.0 - сработало. Этого косяка никогда не замечал, а теперь вдруг заметил. FF вообще неудачен немного, чего только стОит его баг/фича с автоматической переадресацией на www , если в .htaccess не прописано явно... Спасибо.
Спасибо, помогло! FF версия 32.0.3
Спасибо! Сработало)
Отправить комментарий