大多数浏览器会缓存表单输入值。所以当用户刷新页面时,输入框中的内容仍保持不变。
这里出现的问题是:当用户点击“保存”按钮后,服务器会验证POST的数据(例如勾选的产品),如果无效,则会将其发送回浏览器。然而,正如上述所述,即使服务器清除了某些值的选择,由于浏览器缓存,它们仍然可能被选择!
我的数据具有不可见的复选框(直到父项被选中才显示),因此用户可能甚至没有意识到之前的某个值仍然被选择,直到再次点击“保存”并收到错误消息时 - 尽管用户认为它没有选中。这很烦人。
可以通过执行Ctrl + F5来解决这个问题,但这甚至不是一个解决方案。是否有一种自动/程序化的方法告诉浏览器在某些表单/页面上不要缓存表单输入数据呢?
<select>
列表来回答这个问题。我有一个列表,并定义了一个“selected”选项,但刷新页面会保留先前选择的选项。 - Martin