在点击"返回"按钮时禁用浏览器表单输入预填充/自动填充功能

Adr*_* Be 7 html forms input

我想"在点击"后退"按钮时"阻止浏览器预填表格输入".实际上,我希望填充初始值(通过jsp添加),而不是浏览器的(缓存)值.

解决方案1:我发现可以通过禁用当前页面的浏览器缓存来完成此操作.考虑到我"只"想要为"表单"禁用此预填充功能(因此仅禁用表单的缓存,而不是整个页面),这似乎是一个相当极端的解决方案.

解决方案2:然后,明显的下一个解决方案是使用javascript:即,将初始值存储在data-*属性中,然后,在页面加载时,如果它们不同,则将输入值替换为初始值.

这两种解决方案看起来都不完美(这些都是相当有效的)我转向你们希望听到一个更好的解决方案.

资源:

Ada*_*ppe 4

我首先想到的是使用按钮<input type="reset">。这些现在并不常见,因为用户很少真正想要重置表单,但在这里它可能正是您所需要的。

您还可以在页面加载时使用 JavaScript 来完成此操作,而form.reset();不是为用户提供按钮。

https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement.reset

这与您的解决方案 2 类似,因此仍然是浏览器行为的解决方法,但它是标准表单的(旧)部分,我认为它只需很少的额外代码即可实现这一目的(不需要数据-*属性),所以想把它扔掉。