大约几个月前,我在我的vaadin应用程序的登录页面中遇到了以下问题:
当用户点击登录按钮时,如果浏览器自动填写密码字段(记住密码选项),应用程序有时会认为密码字段为空。
这应该是因为浏览器自动填充密码字段时没有触发事件,因此可以将值发送到服务器。
我之前没有机会分析这个问题,但是当我今天尝试重现这个问题时,我再也无法重现它了。
我可以想到两件可能解决问题的事情:
如果我将值更改侦听器添加到密码字段,则单击登录按钮后会立即触发值更改事件。
当我点击登录按钮时,是否有人知道为什么值更改侦听器会触发(焦点在于登录按钮,因此它不能成为焦点更改事件)?
现在可以安全地假设问题已解决(当我点击登录按钮时,如果密码由浏览器自动完成,则值更改侦听器将始终触发)?