[英]How to access html controls in code behind
我试图按照这个例子来验证凭证。 但是,它使用asp:controls作为登录表单。
如果我使用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
来检查已检查的状态
添加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)
您可以通过在html元素上添加runat="server"
从后面的代码访问它们。
http://www.w3schools.com/aspnet/aspnet_refhtmlcontrols.asp
以下链接有一个如何执行此操作的示例
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.