Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Ajax Control Toolkit nefunguje za použití Script manageru

Aktivity
Avatar
Nikola Sterziková (PaNika):14.3.2014 15:22

Ahoj,

mám takový problém. Chci na stránce použít CalendarExtender z Ajax Control Toolkit. Pokud však na stránce použiji standardní asp:ScriptManager, CalendarExtender nefunguje. Pokud použiji ToolkitScriptMa­nager CalendarExtender sice funguje, ale na stránce zase nefunguje tlačítko Zpět v prohlížeči. (tedy uživatel opustí tuto stránku kliknutím na odkaz, a pak použije tlačítko Zpět a prohlížeč zahlásí, že platnost stránky vypršela.)

Nemáte s tím někdo zkušenost?
Používám VS 2012, Framework 4.5, Ajax Control Toolkit mám nainstalovaný přez Nugget, tak snad mám poslední verzi.

Kód, kde nefunguje CalendarExtender:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test1.aspx.cs" Inherits="nsKalendar.Test1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="act" %>
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <act:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="TextBox1"></act:CalendarExtender>

    </form>
</body>
</html>

Kód kde CalendarExtender funguje (ale zase nejde ta historie v prohlížeči):

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test1.aspx.cs" Inherits="nsKalendar.Test1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="act" %>
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <act:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"></act:ToolkitScriptManager>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <act:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="TextBox1"></act:CalendarExtender>

    </form>
</body>
</html>

Předem dík za pomoc.
Nikola

Editováno 14.3.2014 15:23
 
Odpovědět
14.3.2014 15:22
Avatar
Odpovídá na Nikola Sterziková (PaNika)
Nikola Sterziková (PaNika):14.3.2014 17:36

Nakonec mi poradili mi na atakala.com
(http://atakala.com/…er/Item.aspx?…)

Je třeba přidat několik referencí do Scirpt manageru.
Níže uvedené reference se ukázaly jako minimální pro fungování CalendarExtederu...

<asp:ScriptManager ID="ScriptManager1" runat="server">
                <CompositeScript>
                    <Scripts>
                        <asp:ScriptReference Name="MicrosoftAjax.js" />
                        <asp:ScriptReference Name="MicrosoftAjaxWebForms.js" />
                        <asp:ScriptReference Name="Common.Common.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        <asp:ScriptReference Name="ExtenderBase.BaseScripts.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        <asp:ScriptReference Name="PopupExtender.PopupBehavior.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        <asp:ScriptReference Name="Common.DateTime.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        <asp:ScriptReference Name="Common.Threading.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        <asp:ScriptReference Name="Calendar.CalendarBehavior.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                    </Scripts>
                </CompositeScript>
            </asp:ScriptManager>
 
Nahoru Odpovědět
14.3.2014 17:36
Avatar
Odpovídá na Nikola Sterziková (PaNika)
Michal Štěpánek:11.7.2014 21:35

Funguje ti to i v aplikaci? Mě tam CalendarExtender nechce makat. Když to udělám jako web, tak je to OK. Jakmile to ale chci rozběhat v projektu(weba­plikaci), tak to vyhazuje pořád nějaké chyby...

Nahoru Odpovědět
11.7.2014 21:35
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Odpovídá na Michal Štěpánek
Nikola Sterziková (PaNika):14.7.2014 12:10

počkej, teď ti moc nerozumím...
Mám to udělané v projektu Visual Studia, je to web forms a mám tam tyto reference a funguje mi to.

<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
                <CompositeScript>
                        <Scripts>
                                <asp:ScriptReference Name="MicrosoftAjax.js" />
                                <asp:ScriptReference Name="MicrosoftAjaxWebForms.js" />
                                <asp:ScriptReference Name="Common.Common.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="ExtenderBase.BaseScripts.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="PopupExtender.PopupBehavior.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="Common.DateTime.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="Common.Threading.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="Calendar.CalendarBehavior.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="Animation.Animations.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                                <asp:ScriptReference Name="Compat.Timer.Timer.js" Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />
                        </Scripts>
                </CompositeScript>
        </asp:ScriptManagerProxy>

Je fakt, že při testování na pokusném projektu se mi stalo, že to nechtělo fungovat. Musela jsem založit úplně prázdný projekt a pak to fungovalo. Mě přijde, že když se zakládá ve VS projekt z nějaké šablony, tak tam VS dá spousty věcí, které stejně člověk nevyužije a nějak si to pak s tím AJAXem nerozumělo... Tak jestli to není tím....

 
Nahoru Odpovědět
14.7.2014 12:10
Avatar
Odpovídá na Nikola Sterziková (PaNika)
Michal Štěpánek:15.7.2014 10:23

To jsem měl na mysli, když to chci dát do projektu ze šablony, tak to nejde..., nicméně jsem to nakonec obešel, udělal jsem tam textbox, imagebutton a schovaný calendar a obsluhuju to událostmi na kliknutí... 8-)

Nahoru Odpovědět
15.7.2014 10:23
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.