这是一页,包括:
<form action="action.php" method="get" autocomplete="on">
First name:<input type="text" name="fname"><br>
E-mail: <input type="email" name="email"><br>
<input type="submit">
</form>
让我们输入这两个字段,然后提交。然后,当重新加载页面时,字段不是自动完成的,为什么?
我应该用当地的储藏室吗?曲奇饼?确定在几天后返回的用户仍将其字段自动完成吗?
(我使用的Firefox具有自动完成的默认选项,即未禁用)。
发布于 2015-06-05 08:32:21
首先,您需要认识到,元素上的一个属性(而不是您的代码)是完全由浏览器实现的。
浏览器以不同的方式实现这些功能。
你应该检查一下规格。你会注意到,实际上,
默认情况下,窗体元素的自动完成属性处于on状态。
解决问题的唯一解决方案是,如果您想要更可靠和更一致的用户体验,就不要依赖浏览器实现。
简短的回答:使用Javascript
有数以百计的插件,将为您做到这一点。我将指出一个最近在github上流行的插件,但是需要你告诉这个插件你希望它做什么:https://leaverou.github.io/awesomplete/
最新答案:
我看到你只是想填好这片土地。这可以通过这样的方法来实现(未经测试):
var form = document.forms["name_of_your_form"];
form.onsubmit = function(){
localStorage.setItem("fname", form.elements["fname"].value);
localStorage.setItem("email", form.elements["email"].value);
}
window.onload = function() {
form.elements["fname"].value = localStorage.getItem("fname");
form.elements["email"].value = localStorage.getItem("email");
}
https://stackoverflow.com/questions/30661773
复制相似问题