1. TextBox 如何设置onFocus和onBlur
<asp:TextBox ID="LoginID" onFocus="checkAccount();" onBlur="checkAccount1();" runat="server"></asp:TextBox>
或者
<asp:TextBox ID="LoginID" runat="server"></asp:TextBox>
在CS里面加代码
protected void Page_Load(object sender, EventArgs e)
{
LoginID.Attributes.Add("onfocus", "checkAccount()");
LoginID.Attributes.Add("onblur", "checkAccount1()");
}
2. 用<INPUT>时 通过js给input输入框赋值,并不触发input输入框的onchange 事件 可以通过onpropertychange来解决。
用<asp:TextBox> 通过jsTextBox赋值,并不会使TextBox PostBack
后来这样做
this.TBEmailID.Attributes.Add("onpropertychange","__doPostBack('TBEmail','')");
onchange事件只有是用键盘输入才会触发。或者在页面的js中调用onchange()函数(可以触发C#的TextChanged事件), 例如:
document.getElementById("elementID").onchange();
or
document.textbox1.onchange();
对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。
也就是说:onpropertychange能及时捕获属性值的变化
,而onchange在属性值改变时还必须使得当前元素失去焦点(onblur)才可以激活该事件! 而用propertychange似乎陷入死循环,因为在onpropertychange事件里需要更改控件的value,这样就反复不停的执行。可以通过以下方法来避免反复调用:
<input type=text onpropertychange= "if (event.propertyName == "value ") change(this) ">
通常用于监控前台空间属性改变可以使用的事件有onblur, onchange, onpropertychange,第一个为当控件失去焦点后触发,而第二个为当属性内容改变后触发,不过前两个同时使用,则会首先触发后者,再触发前者,而第三个是javascript的事件,不属于控件自身所带事件,其可以监视任何控件全部属性的变化,十分的具体和全面,但同时也是非常的耗费资源,一不小心就会出现比较大的问题,所以建议使用的时候,一定要做好筛选过滤的工作,以上三个属性都可以支持FireFox和IE,但是Safari是不支持第三者的,所以必须使用其特有的oninput事件即可。
3. Textbox的readonly属性
在ASP.NET 2.0后, 当postback页面时,如果Textbox是readonly的话,Textbox中改变的值会被忽略。 也就是说如果在前台用js修改了textbox的值, server不会把新的值写入textbox的‘Text’属性。 所以不会引发TextChanged event。 这个机制是用来防止用户绕开Textbox的readonly状态而引发的安全问题。
如果需要避开这个机制,可以用:
txtTextBox.Attributes.Add("readonly", "readonly")
这样server就不知道textbox是readonly
参考:
http://scottonwriting.net/sowblog/posts/4965.aspx
http://west-wind.com/weblog/posts/3939.aspx
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=102065
。。。
分享到:
相关推荐
简单的例子,教会你如何把TextBox控件运用的熟练。
工作表2为“Sheet2”鼠标右键点击工作表名Sheet1,弹出菜单中选择“查看代码(V)”弹出Visual Basic For Applications窗口选择“插入(I)”的子菜单“用户窗体(U)”在窗体中放置两个文本框TextBox1、TextBox2;...
从运用中点击vb6.0经典版 打开标准 EXE 建立一个form 1 添加两个Label两个TextBox两个CommandButton,Label的caption改为"输入内容"和 "复制效果",TextBox的text改为"任意文字"和"空",CommandButton的caption改为...
自己总结的一些winform空间运用 包括透明TextBox 透明Button 类似360按钮的玻璃按钮 窗体淡出效果 winform皮肤运用,运用时记得看每个文件夹下的Readme,根据里面的步骤在项目中创建自己的用户控件,然后就可以用了 ...
运用三层架构 包括数据库 sql2000 有前台管理和后台管理两部分 前台包括添加Flash 密码加密 验证码等都是现了部分代码 ; position: relative" Text="用户名"> <asp:TextBox ID="txtname" runat="server...
此程序新手学习 绝对值得 简单代码 包括四则运算 巧妙运用textbox 和 label
这是一个很好使用的时间控件,运用在TextBox中输入时间日期时很实用,
运用了MenuStrip菜单和textBox文本框 用C#语言对文件的进行操作:创建txt文件,通过文件流保存文档
计算个人所得税 适合初学者 其中运用到一个技术在TextBox中只能输入数字,不能输入其它字符。
this.textBox1.Text = i.ToString(); this.progressBar1.Value = i; } 3.定义方法,驱动消息 public void MyEvent() { for (int i = 0; i ; i++) { Thread.Sleep(100); this.BeginInvoke(mydelegate, new ...
ASP.NET提供的Web效力器控件简化了Web运用顺序的设计进程。 Windows控件的属性、方法、事情都是在本机上执行的; Web效力器控件的属性、方法、事情那么全部是在效力器端执行的。 在Web运用顺序中,用户经过客户端...
运用WPF应用程序,在TextBox中输入仅由大写A~G组成的数组,然后由垂直柱状图显示各个大写字母个数。(内含项目文件)
Coolite Toolkit是基于跨浏览器的ExtJS 库开发而来的,并且简化了开发步骤,并且包含有丰富的Ajax运用。 Coolite Toolkit和ExtJS 都是开源的,可能通过SVN直接获取Coolite 的代码 从页面布局和使用的控件TextBox,...
运用了MenuStrip菜单和textBox文本框 用C#语言对文件的进行操作:创建txt文件,通过文件流保存文档,可以在文本框里对语句进行编辑和格式 适合学习winForm新手练习使用。
从页面布局和使用的控件TextBox,Combox,Button,ToolBar,StateBar,Panel,TabPanel,ExplorerBar,MenuBar,PictureBox都用统一的样式非常方便的配置,基本不需要额外美工处理,同时支持ajax无刷新效果。
从页面布局和使用的控件TextBox,Combox,Button,ToolBar,StateBar,Panel,TabPanel,ExplorerBar,MenuBar,PictureBox都用统一的样式非常方便的配置,基本不需要额外美工处理,同时支持ajax无刷新效果。
Coolite Toolkit是基于跨浏览器的ExtJS 库开发而来的,并且简化了开发步骤,并且包含有丰富的Ajax运用。 Coolite Toolkit和ExtJS 都是开源的,可能通过SVN或到codepub.com直接获取Coolite 的代码 从页面布局和使用...
Coolite Toolkit是基于跨浏览器的ExtJS 库开发而来的,并且简化了开发步骤,并且包含有丰富的Ajax运用。 Coolite Toolkit和ExtJS 都是开源的,可能通过SVN或到codepub.com直接获取Coolite 的代码 从页面布局和使用...
运用优势 VSSPELL 8.0 的国际性字典 VSSPELL包含附加的英语字典,西班牙语字典,荷兰语字典。这些词典具体情况如下: 253,000字的英语联合字典 73,000字的英语浓缩字典 91,000字的西班牙语字典 160,...