Frage

Ich verwende asp.net Ajax-Version 1.0 auf asp.net 2.0. (Ich kann noch nicht auf 3.5 Upgrade)

Ich hatte einen Pagemethod, die von Javascript genannt bekommen würde. Das funktionierte perfekt, bis ich ein Update zu einem anderen Teil der Seite hinzugefügt. Nun, wenn ich die Seite mit Debug laufen schaltete den Haltepunkt in der Pagemethod nie aufgerufen wird. wenn ich in Firebug schauen, was zurückgegeben wird, wenn die Post an die Pagemethod genannt wird, merke ich, dass die gesamte aspx Seite, anstatt nur die Anrufe Wert zurückgegeben. Was habe ich gemacht?

Dies ist der Javascript Aufruf der Pagemethod:

function EndRequestHandler(sender, args) {
    $('#selectedCHK').change(
        function() {
            var chkedInput = $('#selectedCHK');
            var networkRead = chkedInput[0].checked;
            PageMethods.ChangeSelectedNetworkReadFlag(routeNum, 
                                                      networkRead, 
                                                      function(msg) { alert(msg);  });
        }
    );
}
$(document).ready(function() {
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}

Der Punkt die EndRequestHandler Funktion am Ende jeder Anforderung aufgerufen zu haben, ist, dass das Element mit dem id ‚#selectedCHK‘ innerhalb des Update-Panel ist und das Ereignis muss jedes Mal gesetzt bekommt die Update aktualisiert werden.

War es hilfreich?

Lösung 2

Ich dachte, dies und es war ein Konfigurationsproblem. Insbesondere musste ich hinzufügen:

<httpModules>
    <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</httpModules>

innerhalb des Abschnitt.

Ich dachte, dass ich die Website richtig konfiguriert hatte, aber ich beschlossen, durch die Dokumentation Schritt für Schritt.

Andere Tipps

Versuchen Sie, die Update bedingter auf Ihrem Update-Panel einstellen. Klingt wie der Update-Panel Ihre Veranstaltungen ist Hijacking.

<asp:UpdatePanel ID="upMyPanel" UpdateMode="Conditional" runat="server">
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top