Avatar billede chw Nybegynder
09. februar 2006 - 09:53 Der er 15 kommentarer og
1 løsning

Kalde javescript inden knapevent i codebehind

Hej jeg har en aspknap, som gør det helt normale at kalde dens event i codebehind. Jeg vil gerne køre et valideringsscript inden den laver postback. Det er scriptet der skal afgøre om der skal laves postback eller ikke. Og jeg mener postback til knappens event, og ikke bare page.submit.
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:03 #1
hvad type af validering skal du lave ?

kan du ikke bare bruge validerings kontrollerne i asp.net ?
Avatar billede chw Nybegynder
09. februar 2006 - 10:14 #2
Jeg har førsøgt, men det lykkes ikke helt for mig. Jeg skal kontrollere en værdi i en listbox, så har forsøgt med custom control, men kan ikke få det til at fungere som jeg gerne vil. Det skal jo kalde scriptet når jeg trykker på knappen, men den skal validere listboxen. Hvis du forstår
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:17 #3
ja
hvad præcist er det du skal have kontrolleret ?
Avatar billede chw Nybegynder
09. februar 2006 - 10:18 #4
Jeg kan godt få den til at kalde mit script, men hvad hvordan får jeg den til at kalde codebehind, så den går i min buttonevent metode? Jeg ved godt man selv kan sende parametre med og så bruge dem som indikator, men kan man ikke undgå dette?
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:21 #5
men laver den postback selv om indholdet i din listbox ikke bliver godkendt ?
Avatar billede chw Nybegynder
09. februar 2006 - 10:22 #6
nej, kun hvis det er godkendt. Det er meningen hvert fald
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:25 #7
hvad præcist forsøger du at kontrollere.
fordi hvis du har en validerings kontrol på siden og bruger asp.net 2.0 bør den ikke lave post back.
Avatar billede chw Nybegynder
09. februar 2006 - 10:29 #8
Det er nok fordi jeg ikke får den rigtig sat op så. Når jeg trykker på en søgeknap, skal der valideres om valuen i en listbox="choose". Hvis ikke skal den kalde buttonevent i codebehind
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:31 #9
det vil sige den skal kun lave postback hvis værdien er choose ?
Avatar billede chw Nybegynder
09. februar 2006 - 10:32 #10
min script ser således ud:

function validatePostnr() {

if(document.getElementById("lbPostnr").value != "choose")
    {
        hvad skal jeg gøre her??
     
    }
    else
    {
        hvad skal jeg gøre her??
    }
}
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:32 #11
det vil sige den skal kun lave postback hvis værdien er choose ?
Avatar billede chw Nybegynder
09. februar 2006 - 10:35 #12
nej omvendt. Hvis den ikke er
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:38 #13
<asp:Button ID="Action" OnLoad="btn_load" OnClick="Action_Click" runat="server" CssClass="button" Text="Test"  />

codebehind:
protected void btn_load(object sender, EventArgs e)
    {
        Button btn = (Button)sender;
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        sb.Append("if(document.getElementById('lbPostnr').value != 'choose'){ ");
        sb.Append("return false;");
        sb.Append("}");
        sb.Append(ClientScript.GetPostBackEventReference(btn, ""));
        sb.Append(";");
        btn.Attributes.Add("onclick", sb.ToString());
    }
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 10:38 #14
sorry fejl:
protected void btn_load(object sender, EventArgs e)
    {
        Button btn = (Button)sender;
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        sb.Append("if(document.getElementById('lbPostnr').value == 'choose'){ ");
        sb.Append("return false;");
        sb.Append("}");
        sb.Append(ClientScript.GetPostBackEventReference(btn, ""));
        sb.Append(";");
        btn.Attributes.Add("onclick", sb.ToString());
    }
Avatar billede chw Nybegynder
09. februar 2006 - 11:05 #15
yes. Tak for det. Du smider selvfølgelig bare et svar
Avatar billede dr_chaos Nybegynder
09. februar 2006 - 11:07 #16
self :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester