Hi Nathan,
A simple solution to this problem is to handle the TextChanged event on the
TextBox.
In your repeater, set the OnTextChanged property to an event handler method
in your code-behind.
<asp:Repeater ID="rptData" runat="server">
<ItemTemplate>
<asp:TextBox runat="server" Text=<%#
Container.DataItem.ToString() %> OnTextChanged="TextChanged"
AutoPostBack="true" />
</ItemTemplate>
</asp:Repeater>
In your code behind, have something like the following (I hope c# is ok).
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
string[] data = new string[] { "s1", "s2" };
this.rptData.DataSource = data;
this.rptData.DataBind();
}
}
protected void TextChanged(object sender, EventArgs e)
{
TextBox textbox = sender as TextBox;
Debug.WriteLine("New text: " + textbox.Text);
}
Remember to only Databind the repeater if the request is not a postback,
otherwise the TextChanged won't be fired and the new value will be lost.
Regards,
--
Phil Harvey
www.anotherblog.com
"Nathan Sokalski" wrote:
> I have a Repeater who's ItemTemplate contains a TextBox that has
> AutoPostBack set to True. However, I am not sure where to handle this
> postback. When I have a Button in the ItemTemplate, I simply use the
> Repeater's ItemCommand event handler, but this event handler is not
> triggered for what would normally be the TextBox's TextChanged event. Can
> someone help me figure out how to handle this postback? Any help would be
> appreciated. Thanks.
> --
> Nathan Sokalski
>
> http://www.nathansokalski.com/
>
>
>