Hi,
Im using a RadGrid for editing participants in an event.
I Would like to validate the email adress before comitting the data.
The problem is now that if i have more than one row in EditState and trys to commit one of the rows is validates all rows in editState?
Why is that? and how to avoid it?
Here is the code to my grid:
Im using a RadGrid for editing participants in an event.
I Would like to validate the email adress before comitting the data.
The problem is now that if i have more than one row in EditState and trys to commit one of the rows is validates all rows in editState?
Why is that? and how to avoid it?
Here is the code to my grid:
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> function RowDblClick(sender, eventArgs) { sender.get_masterTableView().editItem(eventArgs.get_itemIndexHierarchical()); } </script> </telerik:RadCodeBlock> <telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="rgParticipants"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="rgParticipants" LoadingPanelID="RadAjaxLoadingPanel1"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManagerProxy> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server"> </telerik:RadAjaxLoadingPanel> <telerik:RadGrid ID="rgParticipants" runat="server" AutoGenerateColumns="False" AllowSorting="True" Skin="Simple" Width="100%" AllowPaging="True" ShowStatusBar="true" PageSize="999999" GridLines="None" OnUpdateCommand="RadGridItemUpdated" OnNeedDataSource="RadGridNeedDataSource" OnInsertCommand="RadGridItemInserted" OnDeleteCommand="RadGridItemDeleted" AllowMultiRowEdit="True" OnItemDataBound="RadGridItemDataBound" AllowAutomaticInserts="True"> <MasterTableView TableLayout="Fixed" DataKeyNames="Id" CommandItemDisplay="Top" ClientDataKeyNames="Id" EditMode="InPlace" AllowMultiColumnSorting="True" Width="100%" InsertItemPageIndexAction="ShowItemOnCurrentPage" InsertItemDisplay="Top"> <NoRecordsTemplate> <div> Ingen deltagerer. </div> </NoRecordsTemplate> <Columns> <telerik:GridBoundColumn UniqueName="Id" DataField="Id" HeaderText="Id" ReadOnly="True" Visible="False" HeaderStyle-Width="5%"> </telerik:GridBoundColumn> <telerik:GridTemplateColumn UniqueName="tcName" HeaderText="Navn" HeaderStyle-Width="20%" SortExpression="Name"> <ItemTemplate> <asp:Label ID="lblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="txtName" runat="server" Text='<%# Eval("Name") %>' Width="90%" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcClub" HeaderText="Klub" HeaderStyle-Width="20%" SortExpression="Club"> <ItemTemplate> <asp:Label ID="lblClub" runat="server" Text='<%# Eval("Club") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="txtClub" runat="server" Text='<%# Eval("Club") %>' Width="90%" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcEmail" HeaderText="Email" HeaderStyle-Width="20%" SortExpression="Email"> <ItemTemplate> <asp:Label ID="lblEmail" runat="server" Text='<%# Eval("Email") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="txtEmail" runat="server" Text='<%# Eval("Email") %>' Width="90%" /> <asp:RegularExpressionValidator ID="vldEmail" runat="server" Display="Dynamic" ErrorMessage="Ikke en email adresse" ValidationExpression="^[\w\.\-]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]{1,})*(\.[a-zA-Z]{2,3}){1,2}$" ControlToValidate="txtEmail"> </asp:RegularExpressionValidator> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcCategory" HeaderText="Kategori" HeaderStyle-Width="10%" SortExpression="Category"> <ItemTemplate> <asp:Label ID="lblCategory" runat="server" Text='<%# Eval("Category") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:DropDownList ID="dlCategory" runat="server" DataTextField="Description" DataValueField="Id" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcChip" HeaderText="Chip" HeaderStyle-Width="10%" SortExpression="Chip"> <ItemTemplate> <asp:Label ID="lblChip" runat="server" Text=""></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="txtChip" runat="server" Text="" Width="90%" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcStartNumber" HeaderText="Start nummer" HeaderStyle-Width="10%" SortExpression="StartNumber"> <ItemTemplate> <asp:Label ID="lblStartNumber" runat="server" Text='<%# Eval("StartNumber") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="txtStartNumber" runat="server" Text='<%# Eval("StartNumber") %>' Width="90%" /> <asp:RegularExpressionValidator ID="vldStartNumber" ControlToValidate="txtStartNumber" Display="Dynamic" ErrorMessage="Ikke et nummer" ValidationExpression="(^([0-9]*\d*\d{1}?\d*)$)" runat="server" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn UniqueName="tcConfirmed" HeaderText="Status" HeaderStyle-Width="10%" SortExpression="ParticipantStatusDescription"> <ItemTemplate> <asp:Label ID="lblConfirmed" runat="server" Text='<%# Eval("ParticipantStatusDescription") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:DropDownList ID="dlConfirmed" runat="server" DataTextField="Description" DataValueField="Kode" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="EditCommandColumn" EditImageUrl="~/images/Icon/edit.png" CancelImageUrl="~/images/Icon/cross.gif" InsertImageUrl="~/images/Icon/add.gif" UpdateImageUrl="~/images/Icon/accept.gif" EditText="Rediger" InsertText="Opret" UpdateText="Gem"> <HeaderStyle Width="5%"></HeaderStyle> </telerik:GridEditCommandColumn> <telerik:GridButtonColumn UniqueName="DeleteColumn" CommandName="Delete" ButtonType="ImageButton" ImageUrl="~/images/Icon/remove.gif"> <HeaderStyle Width="3%"></HeaderStyle> </telerik:GridButtonColumn> </Columns> </MasterTableView> <ClientSettings> <ClientEvents OnRowDblClick="RowDblClick"></ClientEvents> </ClientSettings> </telerik:RadGrid>