小编Eri*_*olo的帖子

当使用JavaScript来阻止表单提交时,强制Safari表单自动填充条目

我希望Safari的表单自动填充功能可以在我的网络应用程序中处理表单.我们阻止了所有表单的提交事件,而是通过XHR(Ajax)POST将数据发送到服务器.

问题是,Safari在其自动填充(自动填充)"数据库"中创建新条目的默认值要求表单的提交事件一直触发冒泡.从我的测试中,这是我总结并用于表单GET和POST方法.

Firefox中存在此问题; 我们所有的表单都保留了为每个字段"提交"的先前值.这是我们在Safari中想要的行为.

在我们的应用程序中,用户将在多个会话中多次填写相同的表单.在某些情况下,浏览器可以根据用户之前提交的值自动完成(在Safari的情况下自动填充)这些字段.

我想知道是否有其他人遇到过Safari这个问题?更好的是,如果他们有一个解决方案(即使特定于Safari)告诉(或强制)Safari将表单字段值保存到其自动填充数据库中,即使表单的提交事件被阻止了?

我在DOM中尝试过preventDefault()更高版本,让提交事件冒泡到表单的父DOM节点; 行为没有区别.这可能只是Safari中的一个bug ...

javascript forms safari autocomplete form-submit

5
推荐指数
1
解决办法
1251
查看次数

标签 统计

autocomplete ×1

form-submit ×1

forms ×1

javascript ×1

safari ×1