Avatar billede nicklasb Nybegynder
04. januar 2008 - 14:04 Der er 12 kommentarer og
1 løsning

Deaktiver autocomplete i IE7

Jeg vil gerne deaktivere autocomplete på et input-felt i forbindelse med en dropdown-søgning.

Jeg har forsøgt mig med at sætte autocomplete="off" på både form og input -felt, samt prøvet at ændre med Javascript ved setAttribute("autocomplete", "off").

Ingen af delene virker dog efter hensigten - eller det vil sige, i Firefox virker det som det skal, men Internet Explorer melder en Javascript fejl: "Objektet understøtter ikke denne egenskab eller metode", kode 0.
Avatar billede olebole Juniormester
04. januar 2008 - 14:12 #1
<ole>

Så er det ikke dér IE7 melder om fejl. Du må lave en fejl, du ikke viser. Prøv at lægge et link

/mvh
</bole>
Avatar billede nicklasb Nybegynder
04. januar 2008 - 14:26 #2
Nu har jeg skåret alt andet indhold væk og lavet en side, kun med søgeboksen - men fejlen kommer stadig.

Siden jeg har lavet kan ses på http://www.bornstein.dk/form.htm
Avatar billede w13 Novice
04. januar 2008 - 15:02 #3
Det er funktionen her, der giver dig fejlen:

<script type="text/javascript">
function autocomplete() {
    // Kode til autocomplete her
    return 0;
}
</script>

Skal du overhovedet bruge den, når nu du prøver setAttribute("autocomplete","off")?
Avatar billede nicklasb Nybegynder
04. januar 2008 - 15:10 #4
Det tror jeg ikke - altså at det er funktionen der giver fejlen. Hvis jeg udkommenterer ..setAttribute("auto... linjen, kommer der ingen fejl.

Og ja, jeg skal bruge funktionen - det er hele humlen i spørgsmålet ;) Indholdet af funktionen har jeg dog i eksemplet reduceret en hel del, for at være sikker på at det ikke var her fejlen opstod.

Det er den samme fejl der kommer, hvis jeg fjerner det nederste Javascript (den med setAttribute) og i stedet bruger autocomplete="off" på enten input-feltet eller hele formen.
Avatar billede w13 Novice
04. januar 2008 - 17:05 #5
Min logik siger mig bare, at det er den funktion, eftersom fejlen først opstår på min computer, når jeg skriver i tekstfeltet, dvs. onkeypress. Prøv at fjerne den funktion, jeg nævnte, og naturligvis også onkeypress="autocomplete()" i feltet, og se så om fejlen forsvinder.
Avatar billede nicklasb Nybegynder
04. januar 2008 - 17:19 #6
.. og hvordan har du så tænkt dig, at jeg skal køre en funktion onkeypress? Det er meningen at der skal "ske" noget, når man klikker på en knap - og det virker også som det skal, når ikke autocomplete="off" er tilføjet. Men det er lidt et problem at den autocompleter..
Avatar billede w13 Novice
04. januar 2008 - 17:21 #7
Nej, jeg siger at du allerede kører en funktion onkeypress, og at det er den, som gør at det går galt, tilsyneladende.

Men kom lige på, at du da også kan prøve at sætte autocomplete til false i stedet for off med javascript.
Avatar billede nicklasb Nybegynder
04. januar 2008 - 17:32 #8
Jeg kan ikke lige få det til at give mening, det du skriver :S Jeg må have misforstået et eller andet!

Min Javascript funktion virker som den skal - jeg tror nærmere problemet er, at jeg kører en onkeypress funktion, samtidig med at jeg har autocomplete="off" på. Det er som om autocomplete -tagget forsøger at overskrive onkeypress-funktionen, men ikke får lov til det, fordi der allerede står noget der.

Spørgsmålet går da på, hvordan jeg kan få lov at køre en onkeypress funktion, imens jeg har autocomplete="off" på et input-felt.

Det er meningen at jeg skal køre en funktion ved onkeypress (i eksemplet kaldt autocomplete()) - den skal sende og hente noget data til en webserver..
Avatar billede w13 Novice
04. januar 2008 - 17:36 #9
Nu forstår jeg, hvorfor du har 2 autocompletemetoder.. Okay, så. Fejlen er simpelthen bare, at din funktion ikke må hedde autocomplete(). Det er et ulovligt ord.
Avatar billede w13 Novice
04. januar 2008 - 17:41 #10
I hvert fald, når du lige har sat autocomplete som attribut, er det.
Avatar billede nicklasb Nybegynder
04. januar 2008 - 23:34 #11
Ja, det ser faktisk ud til at være løsningen. Man synes man har prøvet alt - og så er løsningen en hel anden, som man slet ikke havde skænket en tanke. Tak for hjælpen!
Avatar billede w13 Novice
05. januar 2008 - 00:41 #12
Det var så lidt, og tak for point. =)
Avatar billede olebole Juniormester
06. januar 2008 - 13:49 #13
Det er årsagen til, du så ofte ser 'my' brugt i programkoder (og som er hængt fast i f.eks. MySQL). På den måde er man sikker på ikke at overskrive allerede bestående funktioner og/eller properties  ;o)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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