Avatar billede the_party_dog Nybegynder
26. maj 2004 - 10:21 Der er 8 kommentarer og
1 løsning

Javascript, funktioner og C#

Jeg har et lille javascript i C#, som gør at jeg kan vælge den defaulte knap til en textbox. Det ligger bare og flyder rundt i min CodeBehind, og det vil jeg helst gerne have fjernet.

Kan jeg ligge det ind i en fil, eller en class eller noget, og kalde det frem når siden loader, så jeg kan få ryddet op i min CodeBehind?

Pt ligger det i en public funktion:

public void SetDefaultButton(Page page, TextBox textControl, Button defaultButton)

        {
            // Sets default buttons.
            // Originally created by Janus Kamp Hansen - http://www.kamp-hansen.dk/pages/showdoc.asp?id=28&menuid=21&menuid=20
            // Extended by Darrell Norton - http://dotnetjunkies.com/weblog/darrell.norton/ - http://dotnetjunkies.com/WebLog/darrell.norton/archive/2004/03/03/8374.aspx
            //  -- added Mozilla support, fixed a few issues, improved performance

            string theScript = @"

<SCRIPT language=""javascript"">

            <!--

                function fnTrapKD(btn, event)
                {

                    if (document.all)
                    {
                        if (event.keyCode == 13)
                        {
                            event.returnValue=false;
                            event.cancel = true;
                            btn.click();
                        }
                    }
                    else if (document.getElementById)
                    {
                        if (event.which == 13)
                        {
                            event.returnValue=false;
                            event.cancel = true;
                            btn.click();
                        }
                    }
                    else if(document.layers)
                    {
                        if(event.which == 13)
                        {
                            event.returnValue=false;
                            event.cancel = true;
                            btn.click();
                        }
                    }
                }

            // -->

</SCRIPT>";

            Page.RegisterStartupScript("ForceDefaultToScript", theScript);

            textControl.Attributes.Add("onkeydown", "fnTrapKD(" + defaultButton.ClientID + ",event)");

        }
Avatar billede burningice Nybegynder
26. maj 2004 - 12:49 #1
du kan vel lægge det i en ekstern .js fil, som browseren kan få lov at hente istedet. Det giver også bedre perfomance, da browseren kan cache dit script. Ulempen er så, at du selv skal sørge for at der kommer en henvisning til filen i din aspx-fil
Avatar billede the_party_dog Nybegynder
26. maj 2004 - 12:59 #2
Er det noget som du kan beskrive lidt nærmere? Måske med et lille eksempel af en art? Har nemmere ved at tage ved lære, når jeg får det vist. :)

Men hvis jeg henviser til min .js fil(Har lige læst mig til hvordan sådan en laves), kan jeg så kalde den med de samme parameter, som jeg gør når den ligger i min kode?
Avatar billede the_party_dog Nybegynder
26. maj 2004 - 13:02 #3
Eller kan jeg vinde noget ved at ligge alt koden om til en class fil? Som jeg kan kalde når jeg loader min side? Sorry for de dumme spørgsmål, har aldrig lært om class og js filer... :(
Avatar billede burningice Nybegynder
26. maj 2004 - 13:07 #4
.js-filer er bare textfiler som din js-kode ligger i. Når du referer til dem med <script src=""> kan bruge koden på nøjagtig samme måde som var den inline.
Avatar billede the_party_dog Nybegynder
18. juni 2004 - 09:10 #5
hvor skal jeg skrive <script src=""> ind henne? Jeg har prøvet alverdens ting, og kan ikke finde ud af det...
Avatar billede burningice Nybegynder
15. juli 2004 - 19:33 #6
det burde være nok bare i dit header-tag på html-siden
Avatar billede the_party_dog Nybegynder
01. december 2004 - 11:18 #7
smid et svar....
Avatar billede burningice Nybegynder
01. december 2004 - 11:54 #8
svar
Avatar billede burningice Nybegynder
01. december 2004 - 11:54 #9
blah...
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
Kurser inden for grundlæggende programmering

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