Avatar billede jl4511 Nybegynder
09. maj 2008 - 10:10 Der er 11 kommentarer og
1 løsning

input uden visning af tidligere indtastninger?

Er det muligt at "disable" den feature, der viser hvad man tidlige har haft tastet ind i et felt med samme navn?
Avatar billede jkampmann Nybegynder
09. maj 2008 - 10:14 #1
AUTOCOMPLETE

<input type="text" name="" id="" autocomplete="off" />

eller..

<form autocomplete="off">
..
</form>
Avatar billede jl4511 Nybegynder
09. maj 2008 - 10:24 #2
Takker :o)

At den så ikke er valid iflg. W3C er en helt anden sag.
Avatar billede jkampmann Nybegynder
26. august 2008 - 14:09 #3
<script type="text/javascript">
function $(i){return document.getElementById(i)}

window.onload = function ()
{
    $('felt').setAttribute("autocomplete", "off");
};
</script>

<form id="felt">
...
</form>

måske
Avatar billede jl4511 Nybegynder
26. august 2008 - 14:45 #4
Tak igen.
Og det er vel så for at få den til at validere på W3C?
Avatar billede mclemens Nybegynder
26. august 2008 - 21:07 #5
Nærmere for at skjule det for validatoren,
d.v.s. at dokumentet ser ud til at være valid i
henhold til w3's standarder, men er reelt ligeså
invalid i henhold til standarderne, som hvis du
lod fejlen dukke op inde hos w3. Du slipper dog
for at se fejl meddelelsen ligesom andre heller
ikke ser den når de validerer siden via. w3.

- Eneste måde jeg kan komme i tanke om at omgå det er måske
at have et felt med name="navn_samt_serverside_timestamp" og
så enten gemme det timestamp serverside eller have et hidden felt
hvor du kan aflæse timestampet fra (name="timestamp" value="timestampet")
eller evt. gennemløbe alle post/get værdierne serverside for at finde dem.
(ikke særlig optimal måde, og jeg ville ikke selv vælge den løsning)

... Men jeg mener ikke at du bør bekymre dig for den manglende validitet
iflg. w3 af attributen (de browsere jeg kender der ikke understøtter den,
ignorerer det blot) - jeg ville dog nok af hensynet til at jeg ikke mener
det er en alvorlig fejl nok også skjule fejlen via. javascript som jkampmann.
Avatar billede olebole Juniormester
26. august 2008 - 21:35 #6
<ole>

Det er ifølge W3C fuldtud tilladt at sætte special attributter med script. Af hensyn til den initielle parsing af markup koden er det derimod ulovligt at anvende invalide attributter i markup'en. Bemærk, at der er tale om to vidt forskellige ting  ;o)

Så der er intet at frygte med hensyn til manglende validitet. Koden er i dén henseende fuldt ud valid i forhold til W3C. Det er ikke en fejl - og derfor heller ikke en alvorlig fejl.

Derimod er bogstavet '$' i følge ECMA (som vedligeholder standarden, JavaScript, JScript og ActionScript bygger på) forbeholdt maskingenereret kode. Jeg ved godt, f.eks. library'et Prototype anvender den viste wrapper, men det er faktisk en rigtig skidt idé.

/mvh
</bole>
Avatar billede olebole Juniormester
26. august 2008 - 21:40 #7
- og med maskingeneret kode, forstås f.eks:

var s = "OleBole";
/(Bo)le/.test(s);
alert(RegExp.$1);
Avatar billede jl4511 Nybegynder
26. august 2008 - 22:06 #8
"At den så ikke er valid iflg. W3C er en helt anden sag." - var faktisk bare en lille sidebemærkning fra min side, og se nu hvad den har afstedkommet :o)
Jeg har for længst accepteret at siden ikke validerer, da funktionaliteten i dette tilfælde var vigtigere - man skal jo heller ikke blive hysterisk ;-)
Men nu kom olebole så med en bemærkning om '$' tegnet (bruges også af jquery library'et).
Hvorfor er det en skidt idé olebole?
Avatar billede mclemens Nybegynder
26. august 2008 - 22:30 #9
Tak for rettelsen Ole, og tak for eksemplet i 21:40:54 på $,
jeg sad lige og tænkte at "$" var en smart lille finesse ...
Avatar billede olebole Juniormester
27. august 2008 - 00:59 #10
jl4511 >> Jeg er en aldrende herre, så naturligvis har jeg en morfarmobil - en 3310  =)

Sådan én kan jeg formodentlig godt åbne øl og slå søm i væggen med. Men da den trods alt er bygget til noget helt andet, så går jeg udfra, det går galt på et eller andet tidspunkt ... uagtet, dens kanon solide konstruktion.

På samme måde er $ som sagt forbeholdt andet brug i ECMA-script. Det er ikke direkte ulovlig at bruge til andet, men det 'mudrer' koden - og i værste fald risikerer du at introducere konflikter.

Ja, det kan i første omgang godt virke fikst, men du kan ligeså godt bruge et andet enkelt tegn - f.eks. en underscore. Selv bruger jeg en del wrappers for at spare mine gamle, fedtede pizzatænger, og til nævnte funktionalitet bruger jeg:

    var d = document; // En nyttig variabel, jeg bruger til flere DOM-wrappers
    function gE(s,D){return (D?D:d).getElementById(s)};

Det andet argument 'D', kan bruges, hvis elementet tilhører et andet dokument ... f.eks. et XML-dokument
Avatar billede olebole Juniormester
27. august 2008 - 01:03 #11
function cE(t,D){return (D?D:d).createElement(t)};
function cT(s,D){return (D?D:d).createTextNode(s)};
function gA(t,o){return o.getElementsByTagName(t)};

- er (synes jeg selv) andre nyttige DOM-wrappers
Avatar billede olebole Juniormester
27. august 2008 - 01:05 #12
Ups ... jeg plejer faktisk at have argumenterne omvendt i gA:
    function gA(o,t){return o.getElementsByTagName(t)};
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