Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Изменение значения html-элемента hidden |
Автор: Avtor 27.11.2007, 19:38 | ||
Для наглядности привожу простенький код:
Так вот при первой загрузке сообщение выдаст "1". Если нажать кнопку, а затем сколько угодно раз обновлять, то сообщение каждый раз будет выдавать "5". Правда это происходит только в FF и IE, в Oper'е же все нормально работает - после каждой перезагрузки выдает "1". Объясните такой абсурд с FF и IE пожалуйста. |
Автор: solenko 27.11.2007, 20:09 |
Не знаю как IE, но FF точно после перезагрузки восстанавливает значения формы, которые до этого ввел пользователь |
Автор: Avtor 27.11.2007, 20:34 |
Я тоже так думал пока, код не проверил. |
Автор: Mymik 27.11.2007, 21:34 |
Avtor, на самом деле все гораздо проще. Ошибка происходит из-за того что ты нажимаешь Ctrl+R или F5(если просто нажать еще раз на ссылку, как бы открыть окно по новой, не обновить, то все будет нормально). Даже не знаю как объяснить это. Но вобщем-то все данные что ты изменил сохраняются свой статус. Потому надо либо в onload обнулять значения либо... либо не знаю даже... Не нажимать Ctrl+R или F5. |
Автор: Avtor 27.11.2007, 21:59 |
Согласен абсолютно со всем и происходит это по той причине, что "5" подставляется сразу в код (выяснено в DOM инспекторе), который обновляй не обновляй - "5" в нем прописана уже жестко. Однако относится это судя по всему только к типу hidden (если поставить другой тип, например, button, то все функционирует так, как и должно). |
Автор: ksnk 28.11.2007, 01:44 | ||
Абсурд, которому следует не только IE, но и FF - это гарантированная фича, а совсем не абсурд ![]() Называется оно - autocomplete. Соответственно, если написать
|
Автор: Avtor 28.11.2007, 21:40 | ||
Если код немного переделать так:
То он будет работать уже и в FF, но только не в IE. Кстати фишка с autocomplete="off" дает такой же результат: в IE не работает, т. е. при обновлении все так же выдает "5". |