有户密码验证后,密码就消失了,想保留密码怎么解决???

raydenzhang 2010-08-18 10:12:03


密 码:<asp:TextBox ID="TextBox2" runat="server" TextMode="Password"
AutoPostBack="True" ontextchanged="TextBox2_TextChanged1"></asp:TextBox>

<asp:Label ID="Label1" runat="server" Height="20px" Width="290px"
ForeColor="#FF3300">密码只能由数字和英文字母组成</asp:Label>





protected void TextBox2_TextChanged1(object sender, EventArgs e)
{
int len = ((TextBox)sender).Text.Length;
if (len < 8 || len > 20)
{
Label1.Text = "密码必需在8位数字和20位数字之间!";
}
if (8 <= len && len <= 20)
{
Label1.Text = "密码输入正确";
}
}

当焦点离开该控件是 验证密码 但是验证完后 密码就没有了 怎么保留下拉啊???
...全文
181 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zsyok 2010-08-19
  • 打赏
  • 举报
回复
<sessionState mode="StateServer" timeout='60'/>
you_fen 2010-08-19
  • 打赏
  • 举报
回复
工具栏中有这个验证的控件
susan_wenjuan 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 raydenzhang 的回复:]
hidPwd 这是什么来的??
[/Quote]

你自已在前台放一个隐藏控件啊.<input type='hidden' id='hidPwd' runnt='server'/>
raydenzhang 2010-08-18
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 mm510 的回复:]
在 Page_Load里面加上这句就可以了。

txtPassword.Attributes["value"] = txtPassword.Text;

这样就可以,不过好像密码框是一个只读属性,只有get没有set属性,
但是如果直接是Login控件是这样,不过是textBox却不是。
[/Quote]

txtPassword 这个又是什么来的???
raydenzhang 2010-08-18
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wenjuan_x 的回复:]
protected void TextBox2_TextChanged1(object sender, EventArgs e)
{
hidPwd.value=TextBox2.Text;
int len = ((TextBox)sender).Text.Length;
if (len < 8 || len > 20)
{
Label1.Text = "密码必需……
[/Quote]

hidPwd 这是什么来的??
MM510 2010-08-18
  • 打赏
  • 举报
回复
在 Page_Load里面加上这句就可以了。

txtPassword.Attributes["value"] = txtPassword.Text;

这样就可以,不过好像密码框是一个只读属性,只有get没有set属性,
但是如果直接是Login控件是这样,不过是textBox却不是。
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wenjuan_x 的回复:]
protected void TextBox2_TextChanged1(object sender, EventArgs e)
{
hidPwd.value=TextBox2.Text;
int len = ((TextBox)sender).Text.Length;
if (len < 8 || len > 20)
{
Label1.Text = "密码必需……
[/Quote]

密码可从服务器设置吗?


另外,我为另一个帖子改写了一下,参见:http://topic.csdn.net/u/20100817/15/493479f5-c3a7-45eb-b3a2-24d7f101202e.html?seed=666342048&r=67788525#r_67788525
susan_wenjuan 2010-08-18
  • 打赏
  • 举报
回复
protected void TextBox2_TextChanged1(object sender, EventArgs e)
{
hidPwd.value=TextBox2.Text;
int len = ((TextBox)sender).Text.Length;
if (len < 8 || len > 20)
{
Label1.Text = "密码必需在8位数字和20位数字之间!";
}
if (8 <= len && len <= 20)
{
Label1.Text = "密码输入正确";
}
}
protected void Page_Load(object sender, EventArgs e)
{
TextBox2.Text=hidPwd.value;
if (Page.IsPostBack)
return;
}
  • 打赏
  • 举报
回复
AutoPostback就会造成password本身刷新,而浏览器默认地就会丢失它的值(跟asp.net毫无关系)。

因此你应该避免去刷新Password本身。例如这个demo:
<%@ Page Language="C#" %>

<%@ Import Namespace="System.Drawing" %>
<script runat="server">
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
Label1.Text = "你输入了" + this.TextBox1.Text.Trim().Length + "个字符";
Label1.ForeColor = this.TextBox1.Text.Trim().StartsWith("1234") ? Color.Red : Color.Black;
}

protected void LinkButton1_Click(object sender, EventArgs e)
{
this.Label1.Text = string.Format("{0}--->{1}", this.TextBox1.Text, this.TextBox2.Text);
UpdatePanel1.Update();
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
输入1:
<asp:TextBox ID="TextBox1" runat="server" OnTextChanged="TextBox1_TextChanged" TextMode="Password"></asp:TextBox>
</td>
<td>
<asp:UpdatePanel runat="server" ID="UpdatePanel1" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="验证" />
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</tr>
</table>
<asp:UpdatePanel runat="server" ID="UpdatePanel2" UpdateMode="Conditional">
<ContentTemplate>
输入2:
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<br />
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click">LinkButton</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
zhangcoki 2010-08-18
  • 打赏
  • 举报
回复
ASP.NET 有一个验证控件的...
wuyq11 2010-08-18
  • 打赏
  • 举报
回复
验证控件或JS判断
<asp:regularexpressionvalidator id="RegularExpressionValidator3" runat="server" ControlToValidate="password" ErrorMessage="密码不能少于六个字符!" ValidationExpression="[^']{6,15}" Display="Dynamic"></asp:regularexpressionvalidator>
乘风破浪dgg 2010-08-18
  • 打赏
  • 举报
回复
改成js验证。哪有这么验证的,要么就ajax.
ai593423625 2010-08-18
  • 打赏
  • 举报
回复
把它保存在某一个范围内···

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧