I'd like to use autocomplete boxes set to text and limit to single entry. I have achieved this but I'm now trying to detect if the text entered is new. i.e. it is not an item that already exists in the database that populates the list.
In my case the select statement is against a table with less than 100 records. New values are permitted. The user types and the dropdown is filtered. The user can then select from a value or carry-on typing.
Can the control indicate
1. If the value has been selected or typed.
2. If typed then is this a new entry or an value that exists but was not selected.... sometimes our user will paste a value in directly which actually already exists in the list.
I need to be able to differentiate so that new values are added to a table when the form is saved.
Thanks
<telerik:RadGrid AutoGenerateColumns="False" ID="RadGrid4" AllowFilteringByColumn="True" AllowSorting="True" runat="server" OnItemCommand="RadGrid4_ItemCommand" OnItemCreated="RadGrid4_ItemCreated" EnableLinqExpressions="false" HtmlEncode="true" OnNeedDataSource="RadGrid4_NeedDataSource" GroupingSettings-RetainGroupFootersVisibility="true" ShowGroupPanel="True" CellSpacing="-1" GridLines="Both" Skin="Office2010Silver" EnableViewState="true" Width="100%"> <PagerStyle Mode="NextPrevAndNumeric" /> <GroupingSettings CaseSensitive="false" /> <ClientSettings AllowKeyboardNavigation="true"> </ClientSettings> <ExportSettings OpenInNewWindow="true" FileName="i-Dispatch Job Part Used Report" ExportOnlyData="true"> <Pdf PageHeight="210mm" PageWidth="297mm" DefaultFontFamily="Arial Unicode MS" PageTopMargin="45mm" BorderStyle="Medium" BorderColor="#666666" PaperSize="A4" > </Pdf> </ExportSettings> <MasterTableView Width="100%" DataKeyNames="JobID" HierarchyLoadMode="ServerOnDemand" ShowGroupFooter="true" AllowMultiColumnSorting="true"> <Columns> <telerik:GridMaskedColumn DataField="JobID" HeaderText="JobID#" FilterControlWidth="50px" AutoPostBackOnFilter="false" CurrentFilterFunction="EqualTo" FilterDelay="2000" ShowFilterIcon="false" Mask="#####" GroupByExpression="JobID Group By JobID"> <ColumnValidationSettings> <ModelErrorMessage Text=""></ModelErrorMessage> </ColumnValidationSettings> </telerik:GridMaskedColumn> <telerik:GridBoundColumn DataField="JobTitle" FilterControlAltText="Filter JobTitle column" HeaderText="Job Title" SortExpression="JobTitle" UniqueName="JobTitle"> <ColumnValidationSettings> <ModelErrorMessage Text="" /> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="JobBookedDate" PickerType="DatePicker" EnableTimeIndependentFiltering="true" DataFormatString="{0:dd/MM/yyyy HH:mm }" DataType="System.DateTime" FilterControlAltText="Filter JobBookedDate column" HeaderText="Job Booked Date" SortExpression="JobBookedDate" UniqueName="JobBookedDate"> <ColumnValidationSettings> <ModelErrorMessage Text="" /> </ColumnValidationSettings> </telerik:GridDateTimeColumn> <telerik:GridTemplateColumn DataField="AssignedStaffID" HeaderText="Mobile Staff" UniqueName="AssignedStaffID" HeaderStyle-Width="200px" SortExpression="AssignedStaffID"> <FilterTemplate> <telerik:RadComboBox ID="comboStaff" DataTextField="StaffName" DataValueField="StaffID" Height="100px" AppendDataBoundItems="true" SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("AssignedStaffID").CurrentFilterValue %>' runat="server" OnClientSelectedIndexChanged="StaffIndexChanged"> <Items> <telerik:RadComboBoxItem Text="All" /> </Items> </telerik:RadComboBox> <telerik:RadScriptBlock ID="RadScriptBlock10" runat="server"> <script type="text/javascript"> function StaffIndexChanged(sender, args) { var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>"); tableView.filter("AssignedStaffID", args.get_item().get_value(), "EqualTo"); } </script> </telerik:RadScriptBlock> </FilterTemplate> <ItemTemplate> <%# Eval("Staff") %> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn DataField="CreatedBy" HeaderText="Added By" UniqueName="CreatedBy" HeaderStyle-Width="200px" SortExpression="CreatedBy"> <FilterTemplate> <telerik:RadComboBox ID="comboAdded" DataTextField="StaffName" DataValueField="StaffID" Height="100px" AppendDataBoundItems="true" SelectedValue='<%# ((GridItem)Container).OwnerTableView.GetColumn("CreatedBy").CurrentFilterValue %>' runat="server" OnClientSelectedIndexChanged="AddedByIndexChanged"> <Items> <telerik:RadComboBoxItem Text="All" /> </Items> </telerik:RadComboBox> <telerik:RadScriptBlock ID="RadScriptBlock11" runat="server"> <script type="text/javascript"> function AddedByIndexChanged(sender, args) { var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>"); tableView.filter("CreatedBy", args.get_item().get_value(), "EqualTo"); } </script> </telerik:RadScriptBlock> </FilterTemplate> <ItemTemplate> <%# Eval("AddedBy") %> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="PartCode" FilterControlAltText="Filter PartCode column" HeaderText="Part Code" SortExpression="PartCode" UniqueName="PartCode"> <ColumnValidationSettings> <ModelErrorMessage Text="" /> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="PartName" FilterControlAltText="Filter PartName column" HeaderText="Part Name" SortExpression="PartName" UniqueName="PartName"> <ColumnValidationSettings> <ModelErrorMessage Text="" /> </ColumnValidationSettings> </telerik:GridBoundColumn> <telerik:GridNumericColumn DataFormatString="{0:$###,##0.00}" DataField="PartPurchasePrice" DataType="System.Double" NumericType="Currency" HeaderText="PurchasePrice" SortExpression="PartPurchasePrice" UniqueName="PartPurchasePrice" Aggregate="Sum" FooterAggregateFormatString="{0:C}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> <telerik:GridNumericColumn DataFormatString="{0:$###,##0.00}" DataField="PartSalePrice" DataType="System.Double" NumericType="Currency" HeaderText="SalePrice" SortExpression="PartSalePrice" UniqueName="PartSalePrice" FooterText="Total:" Aggregate="Sum" FooterAggregateFormatString="{0:C}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> <telerik:GridNumericColumn DataFormatString="{0:$###,##0.00}" DataField="JobPartUnitPrice" DataType="System.Double" NumericType="Currency" HeaderText="Unit Price" SortExpression="JobPartUnitPrice" UniqueName="JobPartUnitPrice" Aggregate="Sum" FooterAggregateFormatString="{0:C}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> <telerik:GridNumericColumn DataField="JobPartQuantity" DataType="System.Double" HeaderText="Quantity" SortExpression="JobPartQuantity" UniqueName="JobPartQuantity" Aggregate="Sum" FooterAggregateFormatString="{0:n}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> <telerik:GridNumericColumn DataFormatString="{0:$###,##0.00}" DataField="JobPartGST" DataType="System.Double" NumericType="Currency" HeaderText="JobPartGST" SortExpression="JobPartGST" UniqueName="JobPartGST" Aggregate="Sum" FooterAggregateFormatString="{0:C}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> <telerik:GridNumericColumn DataFormatString="{0:$###,##0.00}" DataField="JobPartTotal" DataType="System.Double" NumericType="Currency" HeaderText="JobPartTotal" SortExpression="JobPartTotal" UniqueName="JobPartTotal" Aggregate="Sum" FooterAggregateFormatString="{0:C}"> <FooterStyle Font-Bold="true"></FooterStyle> </telerik:GridNumericColumn> </Columns> <GroupByExpressions> <telerik:GridGroupByExpression> <GroupByFields> <telerik:GridGroupByField FieldName="JobID"></telerik:GridGroupByField> </GroupByFields> <SelectFields> <telerik:GridGroupByField FieldName="JobID" HeaderText="JobID#"></telerik:GridGroupByField> </SelectFields> </telerik:GridGroupByExpression> </GroupByExpressions> </MasterTableView> <ClientSettings AllowDragToGroup="true"> <Scrolling AllowScroll="True" UseStaticHeaders="True" /> </ClientSettings> </telerik:RadGrid>

01.<%@ Page Title="Goods Received" Language="C#" MasterPageFile="~/App_Masterpage/PurchaseRequest.master" AutoEventWireup="true" CodeFile="Received.aspx.cs" Inherits="apps_rc_purchasing_my_Default" %>02. 03.<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>04.<asp:Content ID="Content2" ContentPlaceHolderID="main_content" runat="Server">05. <div class="container">06. <div class="row">07. <h3>Goods Received</h3>08. <p>09. This page has been configured to allow you to adjust the received quantity.10. </p>11. </div>12. <div class="row">13. <telerik:RadGrid ID="rgRequests" MasterTableView-DataKeyNames="DPO,DLINE" MasterTableView-EnableViewState="true"14. OnPreInit="rgRequests_PreInit" EnableViewState="true" ItemStyle-Font-Size="smaller" AlternatingItemStyle-Font-Size="smaller"15. EnableLinqExpressions="false" PageSize="20" AllowSorting="true" AllowPaging="true" AllowFilteringByColumn="false" runat="server"16. CssClass="cat table table-bordered" DataSourceID="odsRequests" OnItemUpdated="rgRequests_ItemUpdated"17. AllowAutomaticInserts="false" AllowAutomaticUpdates="true" AutoGenerateColumns="false" Skin="Metro">18. <MasterTableView EditFormSettings-EditColumn-AutoPostBackOnFilter="true" HeaderStyle-CssClass="subhead" BatchEditingSettings-EditType="Row"19. EditMode="Batch" CommandItemSettings-SaveChangesText="Save" CommandItemSettings-ShowSaveChangesButton="true"20. CommandItemDisplay="TopAndBottom" CommandItemSettings-ShowAddNewRecordButton="false" CommandItemSettings-ShowRefreshButton="false">21. <Columns>22. <telerik:GridBoundColumn ReadOnly="true" AllowFiltering="false" HeaderStyle-Width="30px" HeaderText="PO #" DataField="DPO" Visible="true" />23. <telerik:GridBoundColumn ReadOnly="true" AllowFiltering="false" HeaderStyle-Width="30px" HeaderText="Line #" DataField="DLINE" Visible="true" UniqueName="DLINE" />24. <telerik:GridBoundColumn ReadOnly="true" AllowSorting="true" CurrentFilterFunction="Contains" HeaderStyle-Width="180px" AutoPostBackOnFilter="true" DataField="DITEM" HeaderText="Item" MaxLength="25" />25. <telerik:GridNumericColumn ReadOnly="true" AllowSorting="true" CurrentFilterFunction="Contains" HeaderStyle-Width="180px" AutoPostBackOnFilter="true" DataField="DQTY" HeaderText="Quantity" MaxLength="25" />26. <telerik:GridNumericColumn AllowSorting="true" CurrentFilterFunction="Contains" HeaderStyle-Width="180px" AutoPostBackOnFilter="true" DataField="DRQTY" HeaderText="Rcvd Quantity" MaxLength="25" UniqueName="DRQTY" />27. </Columns>28. </MasterTableView>29. </telerik:RadGrid>30. </div>31. <div class="row" runat="server" id="dbInfo">32. <div class="text-danger" runat="server">33. <h3>Admin Information</h3>34. <div class="list-group">35. <div id="notify" class="list-group-item" runat="server"></div>36. </div>37. </div>38. <div class="example">39. <strong>Database:</strong><small>Web.Config - LIBD31USR - POPPOD - INLINE DATASOURCE - <strong>Usage:</strong> <span class="bs bs-example text-success">RiggsCAT.Finance.PurchaseRequestDET.Search(string search), PurchaseRequestDET.Update(string POID, string DLINE, int DRQTY)</span></small>40. <asp:ObjectDataSource ID="odsRequests" runat="server" SelectMethod="GetRequestsByPO" TypeName="RiggsCAT.Finance.PurchaseRequestDET" UpdateMethod="UpdateReceivedQty">41. <SelectParameters>42. <asp:QueryStringParameter QueryStringField="POID" Type="String" Name="PO" />43. </SelectParameters>44. <UpdateParameters>45. <asp:Parameter Name="DPO" Type="String" />46. <asp:Parameter Name="DLINE" Type="String" />47. <asp:Parameter Name="DRQTY" Type="Int32" />48. </UpdateParameters>49. </asp:ObjectDataSource>50. </div>51. </div>52. </div>53.</asp:Content>