关于ASP.net TextBox控件的失去焦点后触发其它事件
编写人:CC阿爸
2015-2-02
今天在这里,我想与大家一起分享如何处理的ASP.net TextBox控件的失去焦点后触发其它事件的问题,在此做个小结,以供参考。有兴趣的同学,可以一同探讨与学习一下,否则就略过吧。
1.首先弄清楚问题,asp.net 2.0服务器控件没有onBlur。因此我们第一个方法是采用
OnTextChanged 来处理
有一点要注意,txtVen的autopostback要设置为true.
<asp:TextBox ID="txtVen" runat="server" Width="80px" class="TextBox"
OnTextChanged="txtVen_TextChanged" AutoPostBack="true"></asp:TextBox> public void txtVen_TextChanged(object sender, EventArgs e)
{
string strSQL2 = "SELECT * FROM P_Ven WHERE Ven='" + txtVen.Text + "'";
DataSet ds2 = DS(strSQL2, "Sys");
if (ds2 == null || ds2.Tables[].Rows.Count == )
{
}
else
{
//带出币别
SetSelectedIndex(ddlCurr, ds2.Tables[].Rows[]["Currency"].ToString());
chkHas_Sure.Checked = Convert.ToBoolean((ds2.Tables[].Rows[]["Has_Sure"]).ToString());
}
}
以下别以为是大功告成:你会发现根据进不了你定义的后台事件。
OnTextChanged本身就是这样啊,文本改变了,并不是立即就触发事件,需要某个东西触发页面更新后,它才会起作用
这时你要在页面的load事件中添加:
textbox1.Attributes["onblur"] = ClientScript.GetPostBackEventReference(控件1, null);
则当textbox 失去焦点的时候,触发控件1 的事件。
控件1 的事件可以随意写。 当写为:textbox 的 change 事件时, 就在textbox 失去焦点的时候 执行 textbox 的change事件。
这样就相当入引入了onblur事件。我在程序中加入以下代码:
txtVen.Attributes["onblur"] = ClientScript.GetPostBackEventReference(txtVen, null);
2.以下方法虽说可以我的问题,但画面会刷新,需要刷新的方法,当然不是我们希望的。
下面我们使用 AJAX+TextChanged事件 来处理。
后续待补充
以下第二部分为我在程序中采用的解决方案
欢迎加入技术分享群,请留下QQ号码
关于ASP.net TextBox控件的失去焦点后触发其它事件的更多相关文章
- ASP.Net TextBox控件只允许输入数字
原文:ASP.Net TextBox控件只允许输入数字 1.1.在Asp.Net TextBox 控件的 OnKeyPress 事件中指定输入键盘码必须为数字: <asp:TextBox ID= ...
- asp.net textbox控件基础
asp.net有两种控件,一种是html控件,一种是asp控件,在说textbox控件之前,先看看按钮的两个命令oncommand和onclick.每次点击按钮后,都会提交命令,但是程序会首先执行Pa ...
- Asp.net textbox 控件 的 onTextChange 事件
<asp:TextBox ID="txt_MailType" runat="server" OnTextChanged="exitMailTyp ...
- file控件选择同一文件不触发change事件和img控件不改变src的情况下图片不刷新问题解决
最近跑来前端掺和了.. file控件的问题用 inputFile.value = ''; img控件的问题,在图片后面添加一串无意义的参数即可,例如: img.src = 'file:///' + 本 ...
- asp.net textbox控件readonly为true时,后台取值的问题
如题,在后台通过textbox.Text方式取值为空,不论你默认值是否是空,如想要获得,需通过request.Form[""]的方式.
- Easy UI分页控件修改刷新方法后触发两次请求
今天我在做分页的时候,有这样的一个现象: 我重写了分页的刷新和改变页面大小的方法,发现给服务器提交了两次post,问题出现在哪里的?经过alert调试,发现原因是: 刷新和改变页面大小的事件执行的时候 ...
- Winform 点击TreeView控件节点的CheckBox不触发NodeMouseClick事件的做法
private void Tv_areainfo_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { if (!e.Node. ...
- C# textBox控件只允许为数字和小数点并且提取出这个数字
一. textBox控件实现只允许为数字和小数点 如下图所示,在textBox控件框内输入只能是 要在textBox控件属性设置按键按下的事件触发,如下图所示: 二.源代码 textBox控件只允许为 ...
- [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值
原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...
随机推荐
- [ActionScript 3.0] AS3 实现XML转换成JSON
package com.fylib.util { /** * @author Frost.Yen * @E-mail 871979853@qq.com * @create 2015-6-18 下午2: ...
- Java SE 第十一讲----面向对象特征之封装2
1.如果一个类包含了属性跟方法,那么该类的每一个对象都具有自己的属性,但无乱一个类有多少个对象,这些对象共享同一个方法. 2.关于方法参数传递的总结: 对于Java中的方法参数传递,无论传递的是原生数 ...
- 批量修改java文件的包名
需求:我复制进批量的java文件,但是包名需要用现在创建的包名 导入进来时,由于包名不一致会报错 解决办法,点击包名鼠标右键>Refactor>Rename 结果如下ok:
- 查看sql server数据库文件信息
--drop table #dbfiles --deallocate cursor1 ------ declare cursor1 cursor for SELECT name from sys.da ...
- c++cin.ignore()
c++ 中cin.ignore(100,'\n'); 的作用是清除输入流中多余的字符请问这句话是什么意思? 可以举个例子吗? 提问者采纳 这个其实就是忽略cin中的前100个字符,或是'\n'之前的字 ...
- (medium)LeetCode 222.Count Complete Tree Nodes
Given a complete binary tree, count the number of nodes. Definition of a complete binary tree from W ...
- [POJ 2923] Relocation (动态规划 状态压缩)
题目链接:http://poj.org/problem?id=2923 题目的大概意思是,有两辆车a和b,a车的最大承重为A,b车的最大承重为B.有n个家具需要从一个地方搬运到另一个地方,两辆车同时开 ...
- 菜鸟-手把手教你把Acegi应用到实际项目中(1.1)
相信不少朋友们对于学习Acegi的过程是比较痛苦的,而且可能最初一个例子都没能真正运行起来.即使能运行起来,对于里面那么多的配置,更搞不清楚为什么要那么配,多配一个和少配一个究竟有什么区别? 最终头都 ...
- VS error retrieving information from user datastore
搭建好VS2005+PB6.0的开发环境后,新建MFC智能设备应用程序工程出错,错误信息如下: error retrieving information from user datastore 很奇怪 ...
- python学习笔记(sqlalchemy安装失败)
博主今天折腾了一天sqlalchemy安装问题 下面是失败的截图 直接重新安装python2.7仍未解决此问题 最终在一国外论坛中找到解决的方法: 安装VC++对python的支持文件 VCForPy ...