我正在尝试关注这个 example关于如何验证凭据。但是,它使用 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
的正确语法是什么?
最佳答案
将id
和runat
服务器属性添加到输入标签(见下文)
<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;
}
您还可以为 RememberMe
添加一个 html checkbox
<input id="RememberMe" type="checkbox" runat="server" value ="RememberMe"/>
现在您可以通过调用 RememberMe.Checked
来检查选中的状态
关于c# - 如何访问隐藏代码中的html控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16875238/