По сути, у меня есть форма, в которой есть довольно важная информация. Риск, связанный с кешированием формы, таков:
1) Пользователь может не заметить, что дата неверна, и просто подумать, что сервер загрузил свои сохраненные данные (что следует, если дата была правильной). Затем они отправляют данные, и они сохраняются в неправильную дату. Они не замечают до следующей недели или когда на них кричат, что они не отправили форму на нужную неделю.
2) Пользователь замечает, но думает, что ошибка на стороне сервера. Они перезагружают форму из браузера вместо того, чтобы отправлять форму изменения даты, чтобы получить правильную дату, все дураки следуют ...
Итак, я подумал, что, поскольку все попытки справиться с кэшированием на стороне сервера, по-видимому, оказывают минимальное влияние на ситуацию, возможно, был более разумный способ ...
Обе идеи основаны на предположении, что браузер использует кэшированные данные только в том случае, если форма ввода пуста (без значения). Итак, первый вопрос, это правда?
Если это так, мне интересно, какая из этих идей была бы более эффективной:
1) Серверный скрипт просто устанавливает все входные данные на 0. Затем у меня есть js-скрипт, который при загрузке страницы устанавливает все входные данные с 0 на «». (0 никогда не будет возможным входом, в случае, если какие-либо колокола).
2) Оставьте серверный скрипт в покое, и просто вышеупомянутый javascript проходит через каждый вход и заменяет value()
входа на attr("value")
входа. Поэтому, если он не существует, он устанавливает его пустым.
Какие-либо недостатки в моем понимании кэширования браузера или что-то еще? Будет ли какой-либо метод работать лучше?
Пример второй идеи:
$("input :text").val(function() {
realval = (!($this).attr("value")) ? 0 : $(this).attr("value");
return realval;
});