3

クライアント側でこのコードを取得しました:

<p>Username:</p>
<p><asp:TextBox ID="tbUsername" runat="server"></asp:TextBox></p>

<p>Password:</p>
<p><asp:TextBox ID="tbPassword" runat="server" TextMode="Password"></asp:TextBox></p>

<asp:ImageButton ID="btnLogin" runat="server"
<p><asp:ImageButton ID="btnLogin" runat="server"ImageUrl="~/Images/LoginButton.png"</p>

<p><asp:Label ID="lblMessage" runat="server" ForeColor="Red"></asp:Label></p>

そして、サーバー側のこのコード:

protected void btnLogin_Click(object sender, EventArgs e)
{
    string username = tbUsername.Text;
    string Password = tbPassword.Text;

    usersTableAdapter uta = new usersTableAdapter();
    DsShopping.usersDataTable udt = uta.GetUserByUsername(username);

    if (udt.Rows.Count == 0 || udt[0].Password != Password)
    {
        lblMessage.ForeColor = System.Drawing.Color.Red;
        lblMessage.Text = "Error! Login name or password is incorrect.";
        return;
    }

    Session["Login"] = username;
    Response.Redirect("~/Home.aspx");
}

問題は、フォームを表示するダイアログ ウィンドウをポップアップ表示し、サーバー側のコードを使用して対話し、同じダイアログ ウィンドウにユーザー名またはパスワードが正しくないことを表示するにはどうすればよいかということです。上記のように、私は asp.net を使用しており、HTML クライアント側にダイアログを実装したいと考えています。

これを正確に使用する必要があります(ifステートメント)

4

1 に答える 1

1

これは、 Page.RegisterStartupScriptメソッドを利用するための優れたチュートリアルです。コードの次の行の代わりに使用すると、Javascript無効なユーザー名とパスワードの組み合わせに関するアラートが表示されます。

    lblMessage.ForeColor = System.Drawing.Color.Red;
    lblMessage.Text = "Error! Login name or password is incorrect.";

編集: ところで、パスワード テキスト ボックス ( tbPassword) には、ここでTextMode説明されているようにプロパティを設定する必要があります。この場合、列挙を使用する必要があります。詳細はこちらTextBoxMode

于 2012-12-19T07:03:24.677 に答える