web-dev-qa-db-ja.com

テキストモードのパスワードを使用するテキストボックスにテキストが表示されないasp.net c#

Webフォームにはいくつかのボタンがあり、ユーザーがそれらをクリックすると、テキストボックスが更新されます。これは、textmode = passwordを追加するまで機能しました。これで、テキストボックスにテキストが表示されなくなりました。アプリをデバッグし、テキストプロパティが値を取得していますが、再び表示されません。

ここに私が試したものがあります:

 protected void btn_punch_7_Click(object sender, EventArgs e)
    {

        const string string_punch_Number_7 = "7";
        var text = txt_punch.Text;
        text += string_punch_Number_7;

        txt_punch.Text = text;


    }

    protected void btn_punch_8_Click(object sender, EventArgs e)
    {
        const string string_punch_Number_8 = "8";
        var text = txt_punch.Text;
        text += string_punch_Number_8;

        txt_punch.Text = text;

    }

私もこれに疲れました:

public partial class WebForm3 : System.Web.UI.Page
{
    public string string_punch;
    protected void Page_Load(object sender, EventArgs e)
    {
        MultiView1.SetActiveView(View1);

        txt_punch.Width = 300;
        txt_punch.Height = 50;
        txt_punch.MaxLength = 4;
        txt_punch.Attributes.Add("OnChange", string_punch);

    }

    protected void btn_punch_7_Click(object sender, EventArgs e)
    {

        const string string_punch_Number_7 = "7";
        string_punch = txt_punch.Text;
        string_punch += string_punch_Number_7;

        txt_punch.Text = string_punch;


    }

    protected void btn_punch_8_Click(object sender, EventArgs e)
    {
        const string string_punch_Number_8 = "8";
        string_punch = txt_punch.Text;
        string_punch += string_punch_Number_8;

        txt_punch.Text = string_punch;

    }
18
nate

あなたはどれほど必死ですか?

何かを試そうと必死になっていないなら、それを機能させるために何かを読み続けてください。これはナイスではありません。 OK? OK。

秘Theは、Webアプリにパスワードボックスではないと思わせることです。つまり、TextMode="password"を使用しないでください。
次にPage_Loadtxt_punch.Attributes["type"] = "password"と入力します

それでおしまい。ブラウザは、それがパスワードフィールドであることを認識します(アスタリスクまたはドットを表示します)が、サーバー側はそれを知らないため、プレーンテキストであるため、クライアントにコンテンツを送信します。もちろん、これはページソースにパスワードも入れます...

54
Mr Lister

TextBoxのTextModeプロパティをPasswordに設定すると、デフォルトの動作では、Textプロパティの値が表示されません。

これは、ページのHTMLソースにマスクされていないパスワードが表示されるのを防ぐためです。

1つの解決策は、属性を使用してパスワード値を保持することです。

TextBox.Attributes.Add("value", "yourPassword");

ソース

14
ChrisF

コラの答えのオプション1に基づいて、これを試すことができます:

TextBox.Attributes["value"] = "Whatever value goes here";
0

パスワードテキストボックスに値を直接割り当てることはできません。テキストボックスのパスワードに値を割り当てるには、テキストボックスの属性を使用する必要があります

Textbox1.Attributes.Add("value",variable/"string");
0
Hafsal Rh

これはasp.netのバグです!!電子メール検証アルゴリズムは非常に厳格であるため、有効な電子メールが一部除外されます。 TextModeを「Password」から「SingleLine」に切り替えると、コードが機能します。

0
Alexandros A

TextboxのプロパティをTextMode = "Password"に設定すると、edit mode textbox display blankになります。次のような値を入力した場合

TextBox.Text = "Password";

その後、機能せず、フォームを保存するために再度パスワードを入力する必要があります。以下のコードのように、属性を使用してテキストボックスに値を入力できます。

TextBox.Attributes["value"] = "your password value";
0
A.M. Patel