/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Egenskaber på indputfelter
Fra : Henrik Klausen


Dato : 29-07-04 09:48

Hej alle. Håber nogen kan hjælpe mig her. Jeg har en formular jeg
foretager validering på. Jeg kunne godt tænkte mig at der for
nogle felter som ikke er udfyldt ved submit ændrer farver (måske
en rød kant). Kan man ændre farven på et indtastningsfelt, på
samme måde som man kan sætte værdien af det med:
document.form.antal.value = "";



--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Steen (29-07-2004)
Kommentar
Fra : Steen


Dato : 29-07-04 09:56

Henrik Klausen wrote:

> Hej alle. Håber nogen kan hjælpe mig her. Jeg har en formular jeg
> foretager validering på. Jeg kunne godt tænkte mig at der for
> nogle felter som ikke er udfyldt ved submit ændrer farver (måske
> en rød kant). Kan man ændre farven på et indtastningsfelt, på
> samme måde som man kan sætte værdien af det med:
> document.form.antal.value = "";

this.style.borderColor='FF0000';

eller alternativt

document.all('kurt').style.borderColor='FF0000';

hvis inputfeltet hedder

<input id="kurt" type="text" />

Mvh Steen



Ryan Kristensen (29-07-2004)
Kommentar
Fra : Ryan Kristensen


Dato : 29-07-04 10:21

On Thu, 29 Jul 2004 10:56:25 +0200, Steen <virker@ikke.invalid> wrote:

> document.all('kurt').style.borderColor='FF0000';

document.all hører sig ie4 til.
Standarden er document.getElementById, hvilket virker fra IE5 og op. -
Derudover virker det også i andre browsere end IE.
Derudover skal en farveangivelse også starte med #.
Så skriv i stedet:
document.getElementById('kurt').style.borderColor = '#ff0000';

Man kan også bruge kortformen for farveangivelse: #f00

--
Ryan Kristensen

Martin Hintzmann And~ (29-07-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 29-07-04 10:26

Ryan Kristensen wrote:
> Standarden er document.getElementById, hvilket virker fra IE5 og op. -
> Derudover virker det også i andre browsere end IE.
> Derudover skal en farveangivelse også starte med #.
> Så skriv i stedet:
> document.getElementById('kurt').style.borderColor = '#ff0000';
>
> Man kan også bruge kortformen for farveangivelse: #f00
>

Og endnu et alternativ

document.forms["fomr"].elements["antal"].style.borderColor = "#f00";

Virker dog kun ved form elementer.

--
Martin Hintzmann Andersen
http://www.hintzmann.dk/

Steen (29-07-2004)
Kommentar
Fra : Steen


Dato : 29-07-04 11:03

Ryan Kristensen wrote:

> document.all hører sig ie4 til.
> Standarden er document.getElementById, hvilket virker fra IE5 og op. -
> Derudover virker det også i andre browsere end IE.
> Derudover skal en farveangivelse også starte med #.
> Så skriv i stedet:
> document.getElementById('kurt').style.borderColor = '#ff0000';

Fuldstændig korrekt - sorry!

> Man kan også bruge kortformen for farveangivelse: #f00

Njah, det er jeg ikke enig i. #f00 er en forkortelse for #f00000 og ikke
#ff0000. Forskellen er ikke stor, men den er der. Og den er selvfølgelig
større mellem #f00000 og #ff0000 end mellem #100000 og #110000.

#f00000 og dermed også #f00 er f.eks. heller ikke en af de oprindelige 216
webfarver, men det er ikke så relevant i vore dage.

Mvh Steen



Jens Gyldenkærne Cla~ (29-07-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 29-07-04 10:40

Steen skrev:


> this.style.borderColor='FF0000';

Der mangler # før farveangivelsen. Derudover virker den kun hvis
den kaldes direkte fra formelementet - og ikke fra et
valideringsscript.

> document.all('kurt').style.borderColor='FF0000';

Document.all er en MS-opfindelse og findes ikke i alle browsere.

Her er en udgave der virker både i IE, Firefox/Mozilla og Opera (og
formentlig en del flere):

<script type="text/javascript">
   function validate(myform){
      if (myform['tekst'].value == '') {
         myform['tekst'].style.border = "1px solid red";
         return false;
      } else {
         return true;
      }
   }
</script>

<form action="test.asp" onsubmit="return(validate(this));">
   <p><input type="text" name="tekst" id="tekst" /></p>
   <p><input type="submit" /></p>
</form>


Eksemplet kan ses (en smule udbygget) her:
<http://www.gyros.dk/usenet/html/form.shtml>
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (29-07-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 29-07-04 11:11

Steen skrev:

>> Man kan også bruge kortformen for farveangivelse: #f00
>
> Njah, det er jeg ikke enig i. #f00 er en forkortelse for
> #f00000 og ikke #ff0000.

Niks.

"The three-digit RGB notation (#rgb) is converted into six-digit
form (#rrggbb) by replicating digits, not by adding zeros."
[ http://www.w3.org/TR/CSS21/syndata.html#color-units ]
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Steen (29-07-2004)
Kommentar
Fra : Steen


Dato : 29-07-04 11:47

Jens Gyldenkærne Clausen wrote:

> Niks.
>
> "The three-digit RGB notation (#rgb) is converted into six-digit
> form (#rrggbb) by replicating digits, not by adding zeros."
> [ http://www.w3.org/TR/CSS21/syndata.html#color-units ]

Damn! Det læste jeg ellers på et website for en tre-fire måneders tid siden
(og som jeg selvfølgelig ikke kan huske nu!), og jeg har rettet mig
konsekvent efter det lige siden, f.eks. altid skrevet FFFFFF for hvid. Så
tak for den oplysning!

Mvh Steen



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste