HI,
I have a user control for address on my web page. When the address or city is changed, i get a valid zip from external url and display it in the zip combobox.
All this works good but after postback, the focus is not set to the user control or to the field which caused postback.
I saved in session the control that is causing postback and tried to set focus to that control on prerender as shown below.
It still doesn't set the focus to the control. How to set the focus to these controls?
<asp:UpdatePanel runat="server" ID="up_ClientAddr" UpdateMode="Conditional" ChildrenAsTriggers ="false" > <ContentTemplate> <table> <tr> <td> <span>Address:</span> <asp:RequiredFieldValidator ID="reqAddr" runat="server" ControlToValidate="txtAddr1" ValidationGroup="Add" ErrorMessage="Address is required." ToolTip="Address is required." SetFocusOnError="True"></asp:RequiredFieldValidator> </td> <td> <telerik:RadTextBox ID="txtAddr1" runat="server" OnTextChanged="txtAddr1_TextChanged" AutoPostBack="true" > </telerik:RadTextBox> <asp:Label ID="lblAddr1" runat="server" Text=""></asp:Label> </td> </tr> <tr> <td> <span>Addr2/Apt#/Suite#: </span> </td> <td> <telerik:RadTextBox ID="txtAddr2" runat="server"> </telerik:RadTextBox> <asp:Label ID="lblRAddr2" runat="server" Text=""></asp:Label> </td> </tr> <tr> <td> <telerik:RadComboBox ID="rcbCity" runat="server" MarkFirstMatch="true" AutoPostBack="true" OnSelectedIndexChanged="rcbCity_SelectedIndexChanged"> </telerik:RadComboBox> <asp:Label ID="lblCity" runat="server" Text=""></asp:Label> </td> </tr> <tr> <td> <telerik:RadComboBox ID="rcbZip" runat="server" MarkFirstMatch="true"> </telerik:RadComboBox> <asp:Label ID="lblZip" runat="server" Text=""></asp:Label> </td> </tr> </table> </ContentTemplate> </asp:UpdatePanel>
protected void txtAddr1_TextChanged(object sender, EventArgs e) { Session["event_control"] = "txtAddr1"; GetZipCodeValidateAndUpdateZipCodeField(); } protected void rcbCity_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { Session["event_control"] = "rcbCity"; GetZipCodeValidateAndUpdateZipCodeField(); } protected void rcbState_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) { Session["event_control"] = "rcbState"; GetZipCodeValidateAndUpdateZipCodeField(); }protected void Page_PreRender(object sender, EventArgs e) { if (Session["event_control"] != null) { if (Session["event_control"].ToString() == "txtAddr1") { txtAddr1.Focus(); } else if (Session["event_control"].ToString() == "rcbCity") { txtAddr1.Focus(); } else if (Session["event_control"].ToString() == "rcbState") { txtAddr1.Focus(); } } }
Thanks in Advance
