所以我有这个输入标签:
<input type="password" id="password" name="password" runat="server" />
我正在尝试使用C#和ASP来设置它的值。Net,但我无法让它工作。
不要在标记或ASP中设置输入类型。NET将在呈现输入之前清除该输入。相反,使用以下标记:
<input id="tbPassword" name="password" runat="server" />
以及您代码背后的以下代码:
tbPassword.Value = "your password";
tbPassword.Attributes["type"] = "password";
然而,我强烈反对这种做法。首先,您不应该将密码存储在纯文本中。这是一种非常糟糕的安全做法。
第二,如果你只是想在代码中设置密码,为什么还要它呢?密码输入的意义在于用户交互(输入密码)。如果你为他们这样做,那么把它写在页面上是毫无意义的。
您可以使用TextBox.Attributes.Add
设置<asp:TextBox>
的值,然后为文本框设置value
属性。
代码示例:
TextBox1.Attributes.Add("value", "My Sample Password");
这是出于安全考虑而设计的。你想用什么填充文本框?您没有将用户的密码以明文形式存储,是吗?
如果您谈论的是用户登录表单,并且您可以访问未加密的密码,那么您做得不对。
用户密码应作为加密哈希存储在数据库中,该哈希不能反转为明文密码,只能检查是否匹配。
如果你想做的是在输入框中预加载用户的密码,以节省他键入的内容,那就不要这样做,因为用户的网络浏览器可能会做得更好。
你试过这样的东西吗:
void Page_Load(object sender, eventargs e)
{
password.value= "something";
}