Asp.net程序中有时需要动态生成密码文本框,如果是使用将Label的文本设置成
<input type="password" value="mypwd" />
生成的控件发送到客户端是没有问题的,控件的值都正常
但如果是使用服务器端的TextBox生成的控件就有问题:
TextBox txtpwd = new TextBox();
txtpwd.TextMode = TextBoxMode.Password;
txtpwd.Text = "mypwd";
Controls.Add(txtpwd);
这样生成的密码框使用Text属性赋值是不起作用的,发送到客户端的为空,而通过下面的方法赋值就可以成功:
txtpwd .Attributes.Add("value", "mypwd");
只是这样密码也以明文方式发送到了客户端,虽然用户在页面上看到的还是一串*号,但通过查看源代码就可以看到密码了
本文讨论了在ASP.NET中动态创建密码输入框时遇到的问题。当使用服务器端TextBox控件并尝试通过Text属性设置初始值时,发现该值并未正确传递到客户端。解决方法是使用Attributes集合来设置value属性。
1483

被折叠的 条评论
为什么被折叠?



