15

資格情報を検証する方法について、このに従おうとしています。ただし、ログイン フォームには asp: コントロールを使用します。

代わりにhtmlコントロールを使用して、CSSスタイルを適用できるようにする場合、たとえば

<div id="login">
<a href="#" id="lclose"></a>

        <form action="#" runat="server">
            <fieldset>
                <div class="frame">
                    <h4>Login</h4>
                    <small>Sign in to your account.</small>
                    <div class="clear"></div>
                    <input type="text" value="Username" class="input-text autoclear" />
                    <input type="password" value="Password" class="input-text autoclear"/>
                </div>

                <div class="separator"></div>

                <div>
                <input type="submit" value="Sign in" class="input-submit float-right" runat="server" onserverclick="LoginButton_Click"/>
                <a href="#" class="float-left">Forgot your password?</a>
                </div>

            </fieldset>
        </form>

</div>

次のようなコード ビハインドでユーザー名とパスワードにアクセスするにはどうすればよいですか?

protected void LoginButton_Click(object sender, EventArgs e)
{
    // Validate the user against the Membership framework user store
    if (Membership.ValidateUser(UserName.Text, Password.Text))
    {
        // Log the user into the site
        FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);
    }
    // If we reach here, the user's credentials were invalid
    InvalidCredentialsMessage.Visible = true;
}

の代わりに正しい構文は何UserName.Text, Password.Textですか?

4

3 に答える 3

17

入力タグにサーバー属性を追加idrunatます (以下を参照)。

<input type="text" value="Username" class="input-text autoclear"  id="Username" runat="server"/>
<input type="password" value="Password" class="input-text autoclear" id="Password" runat="server"/>

また、コードを次のように変更Textする必要があります。Value

protected void LoginButton_Click(object sender, EventArgs e)
{
    // Validate the user against the Membership framework user store
    if (Membership.ValidateUser(Username.Value, Password.Value))
    {
        // Log the user into the site
        FormsAuthentication.RedirectFromLoginPage(UserName.Value, RememberMe.Checked);
    }
    // If we reach here, the user's credentials were invalid
    InvalidCredentialsMessage.Visible = true;
}

checkboxhtmlを追加することもできますRememberMe

<input id="RememberMe" type="checkbox" runat="server" value ="RememberMe"/>

これで、呼び出してチェック済みの状態を確認できますRememberMe.Checked

于 2013-06-01T17:31:18.640 に答える
7

runat="server" と id="your_id" を追加すると、それらにアクセスできるようになります。例えば:

<input type="text" value="Username" class="input-text autoclear" 
   runat="server" id="UserName" />
<input type="password" value="Password" class="input-text autoclear" 
   runat="server" id="Password"/>

次に、次のように値にアクセスできます。

Membership.ValidateUser(UserName.Value, Password.Value)
于 2013-06-01T17:32:03.590 に答える
3

runat="server"html 要素を追加することで、コード ビハインドからアクセスできます。

http://www.w3schools.com/aspnet/aspnet_refhtmlcontrols.asp

以下のリンクには、これを行う方法の例があります

http://msdn.microsoft.com/en-us/library/aa478973.aspx

于 2013-06-01T17:27:51.350 に答える