私はパスワード検証スクリプトで遊んでいますが、長さ、文字、大文字、数字、およびスペースでうまくやっています。しかし、特殊文字を検出する方法がわかりません。
これが私のjqueryスクリプトです:
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$('#password1').keyup(function() {
var pswd = $(this).val();
//validate the length
if(pswd.length < 6 ){ $('#length').removeClass('valid').addClass('invalid'); }
//validate letter
if(pswd.match(/[A-z]/)){ $('#letter').removeClass('invalid').addClass('valid'); }
//validate capital letter
if(pswd.match(/[A-Z]/)){ $('#capital').removeClass('invalid').addClass('valid'); }
//validate number
if(pswd.match(/\d/)){ $('#number').removeClass('invalid').addClass('valid'); }
//validate no spaces
if(pswd.match(/\s/)){ $('#spaces').removeClass('valid').addClass('invalid'); }
//validate symbols
if(pswd.match(/\D/)){ $('#symbol').removeClass('invalid').addClass('valid'); }
});
});
</script>
思い出せないどこかから、これをオフラインにしたことを認めます。スクリプトをテストしていると、文字が入力されるたびにシンボルが常に検証されることに気付きました。
if( pswd.match (/\D/)){間違っていますか?