两种方法

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. 洛谷试炼场-简单数学问题-P1088 火星人

    洛谷试炼场-简单数学问题 A--P1088 火星人 Description 人类终于登上了火星的土地并且见到了神秘的火星人.人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法 ...

  2. [No0000134]C#中的委托,匿名方法和Lambda表达式

    简介 在.NET中,委托,匿名方法和Lambda表达式很容易发生混淆.我想下面的代码能证实这点.下面哪一个First会被编译?哪一个会返回我们需要的结果?即Customer.ID=5.答案是6个Fir ...

  3. [No0000EC]C# 字符串(String)

    在 C# 中,可以使用字符数组来表示字符串,但是,更常见的做法是使用 string 关键字来声明一个字符串变量.string 关键字是 System.String 类的别名. 创建 String 对象 ...

  4. Oracle的一些经典SQL面试题

    实例1:测试数据: create table nba( team   varchar2(20), year number(4) ) SQL> select * from nba; TEAM    ...

  5. cinder 和 qt5 vs2015结合

    下载编译好的cinder_0.9.1_vc2013, 用vs2015打开 cinder_0.9.1_vc2013\proj\vc2013\cinder.sln 重新编译 由于我用的qt也是vs2015 ...

  6. es_5.4.4 reinstall log and upgrade to V6.5.4--APM

      elastic-APM opbeat is deadhttps://blog.csdn.net/chenwenhao0304/article/details/83302942https://www ...

  7. WordCount 的实现与测试

    一.开头 (1)合作者:201631062627,201631062427 (2)代码地址:https://gitee.com/catchcatcat/WordCount.git 二.正文 (1)基本 ...

  8. Jenkins 忘记admin用户名以及密码

    1.进入 如果安装的war包,路劲如下: C:\Users\LENOVO\.jenkins\ 2. 1)方式一: 打开config.xml  ->将useSecurity设置为false 2)方 ...

  9. Ubuntu 下Anaconda3出现 conda:command not found(未找到命令)

    问题:anaconda: command not found解决方案:打开Terminal 1.使用命令:sudo apt install vim 安装vim文本编辑器2.使用命令:vim ~/.ba ...

  10. Orchard Core 版本冲突 The type 'FormTagHelper' exists in both 'Microsoft.AspNetCore.Mvc.TagHelpers, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' and...

    最近老大让我看Orchard Core,这是一个CMS系统.可以先参考大佬的文章:https://www.cnblogs.com/shanyou/archive/2018/09/25/9700422. ...