|
| disable skjulte (password)felter Fra : Leif Neland |
Dato : 11-01-08 09:23 |
|
Jeg har en formular, hvor visse felter bliver skjult/vist ved at den div de
er i bliver vist eller ej (style.display="block"/"none")
Men firefox spørger om den skal ændre det gemte password i password manager,
hvis passwordfeltet ikke er vist.
Det undgår jeg, hvis feltet er disabled.
Kan man loope over alle felter og se, om de er vist, og hvis ikke, så
disable dem?
style.display hænger jo på den div, feltet er i, og ikke på feltet.
Eller bliver jeg nødt til at når jeg display:none div'en også disable
password-feltet?
Leif
| |
Christian Hansen (12-01-2008)
| Kommentar Fra : Christian Hansen |
Dato : 12-01-08 00:26 |
|
Leif Neland wrote:
> Jeg har en formular, hvor visse felter bliver skjult/vist ved at den div de
> er i bliver vist eller ej (style.display="block"/"none")
>
> Men firefox spørger om den skal ændre det gemte password i password manager,
> hvis passwordfeltet ikke er vist.
>
> Det undgår jeg, hvis feltet er disabled.
>
> Kan man loope over alle felter og se, om de er vist, og hvis ikke, så
> disable dem?
> style.display hænger jo på den div, feltet er i, og ikke på feltet.
Det kan du godt.
Du skal lave noget ala følgende:
//hent alle inputs - du kan anvende getElementsByTagName direkte på
form-elementet, såfremt du har flere formelementer og kun ønsker at
disable på en form.
var inputs = document.getElementsByTagName("input");
//løb gennem alle input elementer - bemærk at selects og textareas ikke
er omfattet - de må klares særskilt
for ( var c = 0; c < inputs.length; c++ ) {
//hvis parentNode - altså pågældende input-elements forældrenode,
div-en, har display == "none", så disable input-elemenetet.
if ( inputs.item(c).parentNode.style.display == "none" )
inputs.item(c).disabled = "disabled";
}
Vær opmærksom på at disabled felter ikke postes med ved submit.
Mvh Christian
| |
Leif Neland (13-01-2008)
| Kommentar Fra : Leif Neland |
Dato : 13-01-08 23:49 |
|
Christian Hansen skrev:
> Leif Neland wrote:
>> Jeg har en formular, hvor visse felter bliver skjult/vist ved at den
>> div de
>> er i bliver vist eller ej (style.display="block"/"none")
>>
>> Men firefox spørger om den skal ændre det gemte password i password
>> manager,
>> hvis passwordfeltet ikke er vist.
>>
>> Det undgår jeg, hvis feltet er disabled.
>>
>> Kan man loope over alle felter og se, om de er vist, og hvis ikke, så
>> disable dem?
>> style.display hænger jo på den div, feltet er i, og ikke på feltet.
>
>
> Det kan du godt.
>
> Du skal lave noget ala følgende:
>
Øv, det viser sig, at det ikke var nok at sætte passwordfelter til
disabled, firefox spørger alligevel om det gemte password skal ændres.
Så må jeg vel ligefrem ændre typen til f.ex. text i stedet for password.
Eller read-only? Må lige prøve.
Leif
| |
|
|