javascript - HTML5 Pattern fallback for Safari -
safari not support html5 pattern... input pattern below works fine in need of workable fall back.
<input type="password" required pattern="(?=^.{8,}$)((?=.*\d)|(?=.*\w+))(?![.\n])(?=.*[a-z])(?=.*[a-z]).*$" name="password" id="password">
fallback attempt... (from answer dated 2011)
var input = document.getelementsbyname('password')[0]; input.addeventlistener('change', function() { console.log('is valid?', input.value.search(new regexp(input.getattribute('pattern'))) !== -1); }, false);
the problem event you're listening to. event change
same blur
in case.
change event listen keyup
or input
:
input.addeventlistener('input', function() { console.log('is valid?', input.value.search(new regexp(input.getattribute('pattern'))) !== -1); }, false);
Comments
Post a Comment