如何让浏览器记住ajax提交时自动填充的表单值?

时间:2016-12-06 06:54:19

标签: html5 forms autocomplete

我创建了一个表单,在提交时会对提交进行ajax调用。它不是标准表单提交。如何让浏览器记住自动填充的表单数据(不仅仅是用户名和密码)?我已经尝试将表单提交到隐藏的iframe,但它只适用于chrome。是否有适用于所有浏览器的解决方案或解决方法。

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方案。

基本上,在表单上触发submit事件时,浏览器会存储输入值。

所有您需要做的就是通过调用event.preventDefault()函数防止页面重新加载,并使用Javascript处理其余部分。

这是一个基本示例:https://codesandbox.io/s/phnsn

<form name="jsForm">
    <input type="text" name="search" autocomplete="search" />
    <button type="submit">Search</button>
</form>

<script>
    document.jsForm.addEventListener("submit", function(event) {
        event.preventDefault();

        // Handle Ajax call here
    });
</script>

请记住,如果在“提交”按钮上添加了click事件,则仍然需要以编程方式触发submit事件。因此,最好使用带有提交类型的按钮。