ユーザーに入力させるパスワードのinput要素を作成しております。
i要素をクリックするとtype="password"からtype="text"に変更されるため
ユーザーから可視化されます。
ユーザーから受け付ける文字は、キー入力時点で半角英数字のみに
限定したいと考えているのですが
・一方でinput type="password"でも検討したのですが、ペーストで全角を
受け入れてしまいます。
・また、下記のように正規表現で(passwordであってもtextであっても)、keyupにして
一度入力を受け付けてval("")で消えるという動作をしてしまいます。
そもそも入力自体を半角(大文字、小文字)英数字しか受け付けないようなことをjquery等で
実装することは可能なのでしょうか。
input typeはこだわらないのですが、マスキング(●)を追加的に実装するのが手間なため
ベースはtype="password"が良いかと考えております。
アドバイスのほど、よろしくお願い申し上げます。
html
1<input type="password" id="password_1" class="register_text" minlength="8" maxlength="15" placeholder="パスワード(8文字以上15文字以内)"/> 2 <i class="fa fa-square" aria-hidden="true"></i></div> 3
css
1.fa-square{ 2 position: absolute; 3 top: 106px; 4 right: 45px; 5 font-size: 10px; 6 color: #52525263; 7 cursor: pointer; 8} 9 10.fa-square_change{ 11 top: 106px; 12 right: 45px; 13 color: #565656; 14}
javascript
1 $(".fa-square").on('click',function(){ 2 if($(".fa-square").hasClass("fa-square_change")){ 3 $("#password_1").attr("type","password"); 4 $(".fa-square").removeClass("fa-square_change"); 5 }else{ 6 $("#password_1").attr("type","text"); 7 $(".fa-square").addClass("fa-square_change"); 8 } 9 }) 10 11 $("#password_1").on('keyup',function(){ 12 if(!($(this).val().match(/[^a-zA-Z0-9]/))){ 13 $(this).val(""); 14 }; 15 }) 16

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/28 23:02
2018/10/29 01:57