【发布时间】:2020-10-11 00:38:05
【问题描述】:
我们有一个带有 username password 输入和一个按钮的表单。单击按钮时,表单会通过将 /? 添加到当前 url 来重定向到另一个 url,这是不受欢迎的行为。
如果我们添加event.preventDefault(),它会阻止浏览器提供保存用户名和密码(见下图,我的意思)。
这里是代码。它不会在此处重定向,因为它在 sn-p 内。
document.getElementById('send').addEventListener('click', (event) => {
//event.preventDefault()
console.log('test')
})
<form>
<div>
<label for="username">username</label>
<input
id="username"
type="text"
autocomplete="username"
/>
<label for="password">password</label>
<input
id="password"
type="password"
autocomplete="new-password"
/>
</div>
<button id="send">send</button>
</form>
我尝试使用 div 代替 form 标记,但它也阻止了自动完成功能。
另外,here 您可以使用浏览器提供的保存密码来测试表单。从here复制代码
如何防止按钮点击重定向并保留浏览器的自动完成功能?
【问题讨论】:
-
为什么在
autocomplete中使用这些值? -
@Raxel21 这些值是为了让浏览器保存密码。请看这里:developer.mozilla.org/en-US/docs/Web/HTML/Attributes/…
标签: javascript html forms autofill