0

現在、テキストボックス内にテキストIDとパスワードが表示されたログインボックスがあります。ユーザーがそれをクリックすると、それが消えて、ユーザーがパスワードを入力できるようになります。ただし、パスワード テキスト ボックスの textmode を "PASSWORD" に設定すると、パスワード ボックスが機能しなくなったようです。誰にも手がかりはありますか?

HTML

    <input name="Login1$UserName" type="text" value="NUID" id="Login1_UserName" class="txtbox" onfocus="if(this.value==this.defaultValue) {this.value='';$(this).css('color','black');}" onblur="if(this.value=='') {this.value=this.defaultValue;$(this).css('color','rgb(173,180,195)');}" style="width:240px;" />
    <span id="Login1_UserNameRequired" title="User Name is required." style="color:#DA6426;visibility:hidden;">*</span>
  </td>
</tr>
<tr>
  <td>
    <input name="Login1$Password" type="password" id="Login1_Password" style="width:240px;" />
    <span id="Login1_PasswordRequired" title="Password is required." style="color:#DA6426;visibility:hidden;">*</span>
  </td>
</tr>
<tr>
  <td align="center" style="color:#DA6426;">
  </td>
</tr>
<tr>
  <td align="right">
     <input type="submit" name="Login1$LoginButton" value="Log In" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;Login1$LoginButton&quot;, &quot;&quot;, true, &quot;Login1&quot;, &quot;&quot;, false, false))" id="Login1_LoginButton" style="font-family:Arial;height:22px;" />
4

2 に答える 2

0

asp にはあまり詳しくありませんが、javascript では (セキュリティ上の理由から) 入力の型を変更することはできません。パスワード入力にテキストを表示する効果が必要な場合は、パスワードを物理的に非表示にして、スワップする別の入力を表示する必要がありますonfocus

編集:

これは、js ライブラリの一部である、しばらく前に作成したパスワード スワッピング関数へのリンクです。他の誰かが見ていると、jQuery を使用していないことがわかりますが、jQuery を使用する前に作成したため、更新する時間も理由もありませんでした。

http://jsfiddle.net/thundercracker/DXLe3/1/

編集:

私はそれが完全に自己完結していると確信しています。window.onload2 つの入力の ID を使用して呼び出すだけです。

また、一番下に eventListener 関数も必要です。

于 2012-08-03T23:36:53.673 に答える
0

これは、javascript で onfocus および onblur イベントを使用し、input 要素の type 属性を変更することで実行できます。ただし、一部のブラウザーで、フィールドをパスワード入力に戻さないという問題が発生しました。これは、バリデーターを備えたasp.netコントロールでそれを行う記事です。

http://planetofcoders.com/watermark-property-password-textbox-web-page/

于 2012-08-03T23:46:50.970 に答える