[Asp.net]说说密码框和只读框

原文:[Asp.net]说说密码框和只读框

引言

最近负责了一个公司的小项目,从前台到后代,都是自己搞的,为一个客户弄一个信息管理的小系统,虽然对界面什么的没要求,处于负责的态度,还是给他加了一下样式,当然,大部分样式还是从网上扒下来的。

密码框

情景是这样的,当你在用户列表中选择要编辑的记录时,需要在编辑页面将用户信息填在对应的框内,密码框的问题就来了。这里弄了一个简单页面进行测试,代码如下:

 1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Wolfy.TextBoxDemo.Default" %>
 2 <!DOCTYPE html>
 3 <html xmlns="http://www.w3.org/1999/xhtml">
 4 <head runat="server">
 5     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 6     <title></title>
 7 </head>
 8 <body>
 9     <form id="form1" runat="server">
10         <div>
11             密码框:<asp:TextBox runat="server" TextMode="Password" ID="txtPwd" />
12            13         </div>
14     </form>
15 </body>
16 </html>

现在我们,在页面加载的时候,就给它设置个值,代码如下:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7
 8 namespace Wolfy.TextBoxDemo
 9 {
10     public partial class Default : System.Web.UI.Page
11     {
12         protected void Page_Load(object sender, EventArgs e)
13         {
14             if (!IsPostBack)
15             {
16                 this.txtPwd.Text = "admin";
17             }
18         }
19     }
20 }

一般情况下,都会习惯这样去写,浏览一下,被坑了。

竟然没有值,怎么给它赋值呢?

幸亏,还有一种方式,不然这密码框就废了,只能取,不能改变值,太无语了。

 1 namespace Wolfy.TextBoxDemo
 2 {
 3     public partial class Default : System.Web.UI.Page
 4     {
 5         protected void Page_Load(object sender, EventArgs e)
 6         {
 7             if (!IsPostBack)
 8             {
 9                 //this.txtPwd.Text = "admin";
10                 this.txtPwd.Attributes.Add("value","admin");
11             }
12         }
13     }
14 }

浏览看看结果:

这.....

为什么非采用这方式,用Text属性多好!

只读框

情景是这样的,使用js或者jquery为只读框复制,在cs中再获取这个值,单击按钮,然后保存到数据库中。

js代码:

1     <script  type="text/javascript">
2         window.onload = function () {
3             document.getElementById("txtReadOnly").innerText="这是js动态赋值的";
4         }
5     </script>

修改代码:

1             只读框:<asp:TextBox runat="server"  ReadOnly="true" ID="txtReadOnly" />
2             <asp:Button Text="按钮" ID="btn" OnClick="btn_Click" runat="server" />

效果

cs中的代码:

出于习惯性,想去文本框的值,一般都会采用上面的方式,可是....

1         protected void btn_Click(object sender, EventArgs e)
2         {
3             string strReadOnly = this.txtReadOnly.Text;
4         }

 调试一下,看能不能获取到:

 

解决办法:

1         protected void btn_Click(object sender, EventArgs e)
2         {
3             string strReadOnly = Request.Form["txtReadOnly"];
4         }

结果:

分析:

html源码:

修改只读框,给他一个默认值:

1             只读框:<asp:TextBox runat="server"  ReadOnly="true" Text="这是默认值" ID="txtReadOnly"  />
2             <asp:Button Text="按钮" ID="btn" OnClick="btn_Click" runat="server" />

调试一下看看结果:

对应的html源码:

猜测:只读框通过Text属性,只能获取在客户端浏览器生成的html标签中有value属性的文本框的值。(比较拗口)

总结

之前开发都是负责某个模块,这第一次从登录到其他的业务处理,自己全权负责的,所以觉得很奇怪。今天群里面也有人问起了,就觉得有必要总结一下。对于只读框,如果本身就有值,那么可以通过Text属性获取到。如果是前台,动态设置的内容,就会获取不到。

时间: 2024-09-20 19:22:20

[Asp.net]说说密码框和只读框的相关文章

ASP.NET 回发密码框清空问题处理方法

这篇文章主要介绍了ASP.NET 回发密码框清空问题处理方法,需要的朋友可以参考下 在Page_Load里面加上   代码如下: this.txtPassword.Attributes["value"] = this.txtPassword.Text;   

请问大家 关于页面回发后,密码框数据丢失的问题怎么办?

问题描述 让用户注册的页面上是这样的:用户名:TextBox密码: TextBox 是密码模式确认密码:TextBox 是密码模式FileUpload控件,Button按钮,问题是用户单击按钮:后台的事件中,就把用户上传的图片保存到的的电脑上了.这就是回发吧?再回来的时候,那两个密码框里的字就没有了. 这可怎么办啊? 解决方案 解决方案二:密码框的问题只要是刷新或回传就会消失的解决方案三:密码模式的TextBox,一旦触发了PostBack,就没了,这是没办法改变的,我们能想的办法只有如何不产生

如何获取网页密码框中的密码

前言 本人是在家中上网,经常有一些BBS的密码懒得记了,就用IE的自动密码保存功能,这样一来是方便了,但却有一个麻烦,一旦机子不行了,想要重装操作系统了,这些密码却也取不出了,还得重新申请,好麻烦!因此我就写了一个工具,可以取得网页密码框的密码. 因为网页密码框不是一般的EDIT控件,因此不能取得网页密码框的句柄.要实现这个功能,只好通过WebBrowser控件的有关COM接口了.因此取得这些接口是整个程序的关键.有两种方法可以取得WebBrowser控件的接口,接下来我们会逐一介绍,并提供示例

基于JS实现密码框(password)中显示文字提示功能代码_javascript技巧

其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就是放两个文本框,样式以及定位都是一样的.先将type为password的隐藏,只显示type为text的伪密码框,value设置提示内容例如请输入密码.然后当input触发的时候,type为text的input隐藏,让type为password的input显示出来.然后当检测password的val

ASP.NET输入文本框自动提示功能_实用技巧

在ASP.NET Web开发中会经常用到自动提示功能,比如百度搜索.我们只要输入相应的关键字,就可以自动得到相似搜索关键字的提示,方便我们快速的输入关键字进行查询. 那么在ASP.NET中,如果我们需要做个类似的效果,该如何做到呢? 很简单,我们只要借助于一个JQuery强大的插件JQuery AutoComplete来完成这个效果就可以了.这个插件的官方地址为:JQuery AutoComplete,里面也有示例代码. 下面我们将以一个身份证号自动查询为例,来看看JQuery AutoComp

用户体验之密码框的一点改进意见

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在阅读本文之前我想先问各位网友两个问题,一是当您登录网站时,您有因密码输入错误两次或以上而导致登录失败的经历吗?二是您有想过密码框中的字符为什么不以明文显示,而以小圆点显示吗? 这两个问题我猜想应该有肯定的答案了,有一定网龄的人肯定有密码输入错误导致登录失败的经历.而密码框中的字符不以明文显示,用小圆点代替是为了保证密码的安全,明文显示可能会

技巧:解决密码框和文本框长度不一致的问题

技巧|解决|文本框|问题 先看一下下面两条代码: <input type="text" name="test" size="20" /> <input type="password" name="test2" size="20" /> 按理说,文本框的长度和密码框的长度是一样的,但实际显示时却发现长度不一致,在不同版本的IE里效果也各不一样 解决方案: 用styl

C#实现查看文本框(如*号密码框)

文本框 今天闲着无聊,试着用C#写查看密码框的程序(不仅限于密码框,应该是任何有文本的控件都可以)代码见下面.用C++实现起来超简单的这么个东东..用C#复杂得很,我又不想用unsafe,我总觉得用unsafe的话,干嘛不干脆用C++算了. int Length=300;IntPtr THandle=APIs.GetLocalWindow();//取得当前鼠标所在位置的控件句柄int Address=APIs.VirtualAllocEx(Process.GetCurrentProcess().

破解加密的Asp木马登陆密码

破解目标:破解一经过加密的Asp木马登陆密码.由于木马里没有版本说明,具体也不知道这木马叫什么名. 破解思路:两种,用加密后的密码替换密文和利用密文及加密算法反解出密码. 前者根本算不上真正的破解.如果得不到Asp源代码,那么可以说对破解密码,我毫无胜算.有位华夏的朋友说他得到了一个Web的权限,但是无法修改主页,发现其中已经有个Asp木马,但密码是经过加密的.好了,废话太多了,那么,作好准备,这次的解说将会相当的漫长. Asp木马登陆密码验证关键代码如下: if Epass(trim(requ