我有一个非常标准的Rails 4应用程序使用Devise 3
我想要注册表单来触发当前(小牛)版本的Safari中的密码建议:
启用了iCloud Keychain,我在其他页面上获得了建议,只是我的表单因为某些原因而无法使用.
我似乎无法弄清楚启用建议究竟需要什么.
这是设计产生的形式:
<form accept-charset="UTF-8" action="/users" class="new_user" id="new_user" method="post"> <div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /> <input name="authenticity_token" type="hidden" value="SKtqmi1L/BKcTE/Hvlvw1H3ZRH8nd2UNiNnVILuLS/E=" /> </div> <div> <label for="user_email">Email</label><br /> <input autofocus="autofocus" id="user_email" name="user[email]" type="email" value="" /> </div> <div> <label for="user_password">Password</label><br /> <input id="user_password" name="user[password]" type="password" /> </div> <div> <label for="user_password_confirmation">Password confirmation</label><br /> <input id="user_password_confirmation" name="user[password_confirmation]" type="password" /> </div> <div><input name="commit" type="submit" value="Sign up" /></div> </form>
>如何更改表单以触发密码建议
>有哪些关于该功能的可用文档?
解决方法
Apple接受新的自动完成属性:current-password和new-password
我的网站也是同样的问题,这是dedicated to password generation test cases,以改善密码生成器.
如[PDF] guide made by Apple所述,autocomplete属性现在接受设置值以帮助解决此问题.
请参阅此处的规范以及其他有效值:https://html.spec.whatwg.org/multipage/forms.html#attr-fe-autocomplete-new-password
<form method="post" action="/tests/4/register-submit" > <label> <div>Name</div> <input name="name" placeholder="name" autocomplete="name" type="text" pattern=".{4,}" title="Needs to be 4 characters long." required /> </label> <label> <div>Username</div> <input name="username" placeholder="Username" type="text" autocomplete="username" pattern=".{4,}" title="Needs to be 4 characters long." required /> </label> <label> <div>Password</div> <input name="password" placeholder="Password" type="password" autocomplete="new-password" required /> </label> <input type="submit" value="Register" /> </form>
该代码由于使用了autocomplete =“new-password”属性. autocomplete =“current-password”也可用于登录表单.
这已经通过非常有用的测试工作:@simevidas