[英]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.