Postback Problem mit Javascript

  • VB.NET (ASP)

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von zn-gong.

    Postback Problem mit Javascript

    Hallo,

    ich habe ein Problem mit dem Postback von ASP.NET mit JavaScript. Und zwar habe ich Standartmäßig einen div Block mit style="display:none;". Bei einem Klick auf einen Button wird ein JavaScript ausgefürt das den style von none auf block ändert. Wenn ich nun ein PostBack mit ASP habe (z.B. beim Auswählen eines DropDown's) wird der style wieder auf none geändert weil das ja standartmäßig so ist.
    Kann ich dies irgendwie verhindern?

    Mfg.
    Nevs08
    Hallo,

    Das DIV, ist es Aktiv oder Passiv (runat="server") ? Ansonsten in Postback mit Me.<id deines div,s>.Visivle = true setzen und dann wird es nie sichtbar ausgeblendet.

    Schick mal ein bissjen Surce coode rüber dann kann ich ma sehen ob da nicht ieo iwas auf dass div zugrieft.

    LG, Herbrich
    Ahoi,

    Nevs08 schrieb:

    weil das ja standartmäßig so ist

    so ist es ...
    Deine Elemente werden nach dem Postback wieder auf die Ausgangseinstellungen gesetzt, da die Seite beim Postback neu läd.
    Den Postback kannst du aber via AJAX umgehen.
    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de
    Ncht ganz,

    Beim neuladen der Seite wird der Session State ausgewertet (Request.Session) und der ViewState. Letzteres ist darfür verandwortlich dass die Seite so aussieht wie sie war nach den sie neu geladen wurde.

    AJAX ist das gleiche wie Neu laden ohne AJAX nur dass bei AJAX nur die Session State und ViewState übertragen werden. (Ganz flach ausgefdrückt). Denn was in UpdatePannel ist fällt auch unter denn Session State. So weit so gut.

    Nun kannst du beim DIV (vorausgesetzt es ist auch ein DIV^^ den bei ASP.NET ist ein pannel auch ein DIV, wird jedoch nur als DIV gerendert während dessen ein DIV mit id und runat=server attributen nur von coode angesteuert werden kann. Wird dann aber auch ein eigenes Object in ASP.NET.

    Also überprüfe das doch bitte noch einmal und lösch bei DIV die runat=server variable und wen es ein pannel ist, dann schau in Coodebehind nach ob da nicht irgendwo me.deinpannel.visiable = false drinnen steht und falls umnötig löschen, oder vorsichtshalber auskommentieren (falls du kein tfs besitzt).

    LG, Herbrich