两种方法

1.TextBox 绑定TextChanged 并设置AutoPostBack ="true" ,如果不设置AutoPostBack ="true"则不会触发TextChanged事件,然后在对应的方法里面循环Repeater查找改变项

部分代码

<ItemTemplate >
<tr>
<td style ="width :9%;"><%#Eval("Date")%> <asp:HiddenField ID ="hfkey" runat ="server" Value ='<%#Eval("ID")%> ' /></td>
<td style ="width :9%;"><%#Eval("FBASalesDays")%></td>
<td style ="width :9%;"><asp:TextBox ID ="txtUPSShipQty" runat="server" Text ='<%#Eval("UPSShipQty")%>' AutoPostBack ="true" OnTextChanged ="btnCal_Click" ></asp:TextBox> </td>
</tr>
</ItemTemplate>

后台部分代码

protected void btnCal_Click(object sender, EventArgs e)
{ foreach (RepeaterItem item in rpdList.Items)
{
if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
{
HiddenField hfkey = item.FindControl("hfkey") as HiddenField; TextBox txtUPSShipQty = item.FindControl("txtUPSShipQty") as TextBox; DataRow[] rows = dt.Select("ID ='" + hfkey.Value + "'"); if (rows != null && rows.Length > )
{ if (rows[]["UPSShipQty"].ToString().Trim() != txtUPSShipQty.Text.Trim())
{
rows[]["UPSShipQty"] = txtUPSShipQty.Text.Trim(); CalFBAShipQty2(dt, , "UPSShipQty", hfkey.Value.Trim());
break;
} }
}
}
rpdList.DataSource = dt;
rpdList.DataBind();
}

2.让TextBox 触发Repeater 的ItemCommand事件,同样需要绑定TextChanged 并设置AutoPostBack ="true",然后在TextChanged事件中调用ItemCommand

HTML

<asp:Repeater ID="Repeater1" runat="server"
onitemcommand="Repeater1_ItemCommand">
<ItemTemplate>
<%#Eval("txt") %><table>
<tr>
<td>
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="true" OnTextChanged="TextBox1_TextChanged"></asp:TextBox>
</td>
<td>
<asp:Button ID="Button1" runat="server" Text="Button" />
</td>
<td>
<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="true"/>
</td>
</tr></table>
</ItemTemplate>
</asp:Repeater>

后台代码

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.Add("id");
dt.Columns.Add("txt");
dt.Rows.Add("", "1txt");
dt.Rows.Add("", "2txt");
Repeater1.DataSource = dt;
Repeater1.DataBind();
}
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
//注意这里的参数设置
RepeaterCommandEventArgs e1 = new RepeaterCommandEventArgs(((TextBox)sender).NamingContainer as RepeaterItem,sender,new CommandEventArgs("test",null));
Repeater1_ItemCommand(Repeater1, e1);
}
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
string ss = e.CommandName;
if (ss == "test")
Response.Write("");
}

参考:http://bbs.csdn.net/topics/350011338

Repeater 中TextBox 触发TextChanged事件的更多相关文章

  1. 实现textbox文本页面改变触发textchanged事件,代码里修改不触发

    今天弄控件遇到一个问题,就是TextChanged,如果在代码里或在页面修改修改text值,就会触发事情,但如果在textchanged里修改text,它会不会触发呢,不会,我调试跟踪,并没发现它会重 ...

  2. 限定输入框只能输入数字, TextBox的TextChanged事件调用

    /// <summary> /// 限定输入框只能输入数字, TextBox的TextChanged事件调用 /// </summary> /// <param name ...

  3. vue中Enter触发登录事件和javascript中Enter触发点击事件

    created(){ window.addEventListener('keydown', this.handleKeyDown, true)//开启监听键盘按下事件 } 在methods中当keyC ...

  4. WPF中TextBox的PreviewMouseLeftButtonUp事件

    当使用TextBox的PreviewMouseLeftButtonUp事件时(例如,鼠标点击进入TextBox时,清除当前的输入内容),会很意外地发现,这时候不论怎么点击都无法点击到其他控件,焦点一直 ...

  5. JS如何得到Repeater中TextBox控件的值

    var subsidylCost = document.getElementById("txtSubsidylCost.ClientID").value; 这样获取不到,因为txt ...

  6. ALV TREE中双击触发PAI事件的方法

    用事件类实现双击事件,实例化后使用set handler注册到ALV对象.斜体部分为事件方法的具体实现. 代码如下 CLASS lcl_tree_event_receiver DEFINITION. ...

  7. 在GridView控件内文本框实现TextChanged事件

    本篇是教你实现GridView控件内的TextBox文本框实现自身的TextChanged事件.由于某些功能的需求,GridView控件内嵌TextBox,当TextBox值发生变化时,触发TextC ...

  8. asp.net中TextBox里面实现回车触发指定事件

    原文:asp.net中TextBox里面实现回车触发指定事件 我在一个user_top用户控件里面做了个包括搜索的功能.然后再一个页面中添加这个用户控件.浏览时候在textbox里面输入搜索内容后.下 ...

  9. 关于Repeater中绑定的控件不触发ItemCommand事件

    今天遇到 在repeater 中使用一个button,点击button然后跳转另外一个页面. html. <asp:Repeater ID="repeater" runat= ...

随机推荐

  1. ubuntu16.04下安装opencv3.4.1及其扩展模块

    1.源文件下载 opencv-3.4.1.tar.gz(https://github.com/opencv/opencv/releases) opencv_contrib-3.4.1.tar.gz(h ...

  2. [No000013E]用VSCode写python的正确姿势

    最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...

  3. [No0000D9]删除指定文件夹.bat改命或合并文件

    set /p 目录=目录,拖入= rd /s /q %目录% ::ren *.txt *.html ::copy /B *.html aaa.txt pause

  4. block diagonal matrix 直和 块对角矩阵 不完美 有缺陷 缩放 射影几何

    小结: 1.block diagonal matrix  直和 块对角矩阵 A block diagonal matrix is a block matrix that is a square mat ...

  5. Log4j使用注意点

    Porting log4j到指定项目的时候需要注意: 1. log4j选择字符集的时候通过CMake来更改配置,防止出错; 2.

  6. 转:mysql where group by having

    原文地址:https://blog.csdn.net/tengdazhang770960436/article/details/6992272 1.where为什么要写在group by之前呢? 因为 ...

  7. 机器学习【工具】:Numpy基础

    Numpy Numpy 是 Python 数据科学计算的核心库,提供了高性能的多维数组对象及处理数组的工具 使用方式 import numpy as np 数组 生成数组  简单生成 a = np.a ...

  8. 如何解决selenium打开chrome提示chromedriver.exe已停止工作

    场景:启动Chrome,打开URL,提示“disconnected: unable to connect to renderer” 解决方法:chromedriver与chrome的对应关系表, 需要 ...

  9. 【Python全栈-HTML】HTML入门

    HTML入门介绍 参考: https://www.bilibili.com/video/av21663728/?p=339 http://www.cnblogs.com/yuanchenqi/arti ...

  10. 使用Apache CXF根据wsdl文件生成代码

    1.去官网下载,我用的是apache-cxf-2.5.10.zip 2.解压 3.通过命令行进入Apache CXF的bin目录,如我的目录是D:\BIS\axis2\apache-cxf-2.7.1 ...