none
_dooPostBack verursacht Fehler. RRS feed

  • Frage

  • Hallo allerseits!

    Hätte folgendes Problem.
    Ich habe eine Website in der ich ein Dialog mit jQuery anzeige.
    Nach Auswahl eines Elementes im Dialog möchte ich einen PostBack durchführen.

    var params = "{'wert1:'" + wert1 + "'}";
                $.ajax({
                    type: "POST",
                    url: "test.aspx/Start2Change",
                    data: params,
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (msg) {
                        if (msg.d != null) {
                            // Error
                        } else { __doPostBack("lblChange2", ""); }
                    },
                    error: ResponseFails
                });

    Solche postbacks verwende ich des öffteren aber hier bekomme ich die Fehlermeldung:

    Laufzeitfehler in Microsoft JScript: Für die Eigenschaft "value" kann kein Wert festgelegt werden: Das Objekt ist Null oder undefiniert

    Zusätzlich gibt es eine "script block (dynamisch) Datei in welcher der __doPostBack Event vorhanden ist

    //<![CDATA[
    var theForm = document.forms['aspnetForm'];
    if (!theForm) {
        theForm = document.aspnetForm;
    }
    function __doPostBack(eventTarget, eventArgument) {
        if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
            theForm.__EVENTTARGET.value = eventTarget;
            theForm.__EVENTARGUMENT.value = eventArgument;
            theForm.submit();
        }
    }
    //]]>
    Im Netzt habe ich gelesen das man diesen Event mit zwei HiddenFileds selber erstellen kann was ich nicht machen möchte das es ja diesen Handler bereits gibt.

    Wieso bekomme ich hier die Fehlermeldung und an anderen stellen bzw. Dialog (eigentlich sonst niergens) in dem ich auch einen PostBack durchführe, nicht.
    Und hier die Deffinition des Dialogs.
    $('#divMyStateMB').dialog({
    	autoOpen: false,
    	modal: false,
    	width: 'auto',
    	height: 'auto', 
    	close: function (type, data) {
    		// Hier möchte ich es nicht mmachen da der PostBack nur durchgeführt 
    		// werden soll wenn die Aktion erfoglreich gespeichert wurde
    	}
    });

    Wäre für jede Hilfe, Lösung und Denkanstöße sehr dankbar.

    Lg
    String.Rise


    Korrektur: Das Phenomän tritt nur bei InternetExplorer auf und bei allen Dialogs und __doPostBack. Im firefox funktioniert alles tadellos ohne irgendwelche Fehlermeldung in der WebConsole. Mit Fiddler habe ich es noch nicht versucht
    • Bearbeitet String.Rise Mittwoch, 9. Januar 2013 12:14
    Mittwoch, 9. Januar 2013 12:11

Antworten

  • Hi,

    IE hat auch Entwicklertools an Bord (F12), damit kannst Du auch Javascript debuggen und entsprechende Breakpoints setzen und anschließend zeilenweise durchlaufen. Daher mach das mal bitte und schau, welches Objekt genau nicht existiert.

    Ggfs. heißt dein Formular nicht "aspnetForm". Oder deine Elemente sind außerhalb des <form> Tags (wobei das eigentlich nichts ausmachen sollte).


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Samstag, 12. Januar 2013 12:48
    Moderator

Alle Antworten