Link to home
Start Free TrialLog in
Avatar of mjoseph23
mjoseph23

asked on

How to use AJAX toolkit script manager with user controls

I am getting the error "System.InvalidOperationException: Only one instance of a ScriptManager can be added to the page." I know the error is because I have toolkitscriptmanager on the page, but i need it there. I don't know where the other declaration for a scriptmanager is??

<%@ Control Language="C#" AutoEventWireup="true" ClassName="uc_ORItem" CodeFile="uc_ORItem.ascx.cs"
    Inherits="uc_ORItem" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<style type="text/css">
    td
    {
        font-family: Tahoma;
        font-size: 12px;
    }
    .textbox
    {
        font-family: Tahoma;
        font-size: 12px;
    }
</style>
<table cellpadding="0" cellspacing="0" border="0">
    <tr>
        <td valign="middle">
            <cc1:ToolkitScriptManager EnableScriptLocalization="true" ID="ToolkitScriptManager1" runat="server">
            </cc1:ToolkitScriptManager>
            SubSet:<asp:TextBox ID="tbSubset" CssClass="textbox" runat="server" TextMode="SingleLine"
                AutoPostBack="false"></asp:TextBox>
            <!--<asp:HiddenField ID="hdSubSet" runat="server" />-->
            <asp:HiddenField ID="hdSubSetTime" runat="server" />
            <cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" TargetControlID="tbSubset"
                BehaviorID="AutoCompleteEx" ServicePath="Web_Services/LookupSubSet.asmx" ServiceMethod="Get_Subset_List"
                UseContextKey="true" ContextKey="SubSet" MinimumPrefixLength="1" CompletionInterval="1000"
                EnableCaching="true" CompletionSetCount="20" DelimiterCharacters=";, :" OnClientItemSelected="itemSelected"
                CompletionListCssClass="completion_list">
            </cc1:AutoCompleteExtender>
            <%-- Prevent enter in textbox from causing the collapsible panel from operating --%>
 
            <script type="text/javascript">
            // Work around browser behavior of "auto-submitting" simple forms
            var frm = document.getElementById("aspnetForm");
 
            if (frm) 
            {
                frm.onsubmit = function() { return false; };
            }
                                            
            function itemSelected(source, eventArgs)
            {
                //alert("key: " + eventArgs.get_text() + "  value: " + eventArgs.get_value());
                //document.all["hdSubset"].value = eventArgs.get_text();
                document.all["hdSubSetTime"].value = eventArgs.get_value();
                //__doPostBack('hidButton','AutoCompleteItemSelected'); 
                document.forms[0].hidButton.click();
            }
            </script>
 
            <input type="submit" id="hidButton" style="display: none;" />
            &nbsp; Set:<asp:TextBox ID="tbSet" runat="server" CssClass="textbox"></asp:TextBox>
            &nbsp;Quantity:<asp:TextBox ID="tbQuantity2" runat="server" CssClass="textbox" AutoPostBack="true"
                Width="50px"></asp:TextBox>
            &nbsp;MEPRS:<asp:TextBox ID="tbTotal2" runat="server" CssClass="textbox" Width="50px"></asp:TextBox>
            <asp:ImageButton ID="ibtDeleteItems" runat="server" ImageUrl="~/Images/delete.gif"
                AlternateText="Delete Item" OnClick="ibtDeleted_Clicked" />
        </td>
    </tr>
</table>

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of mjoseph23
mjoseph23

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial