/ 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
Problem med onBlur og validering af felt
Fra : Lars Christensen


Dato : 20-10-03 13:25

Hejsa gruppe

Håber der er nogen der kan hjælpe her...

Jeg har en bestillingsformular, hvor jeg gerne vil have de enkelte felter
valideret, når bruger "hopper" igennem formularen.

Et antal af felterne skal være udfyldt, og jeg har lavet et lille
javascript, der validerer feltet ved "onBlur":

<Script>

var DHTML = (document.getElementById || document.all || document.layers);

function getObj(name)
{
/* Tjek om browseren understøtter DHTML... */

if (document.getElementById)
{
this.obj = document.getElementById(name);
this.style = document.getElementById(name).style;
}
else if (document.all)
{
this.obj = document.all[name];
this.style = document.all[name].style;
}
else if (document.layers)
{
    this.obj = document.layers[name];
this.style = document.layers[name];
}
}

function changeCol(col,name)
{
   /* skift border-farve på de formularfelter, der valideres. Feltet
   bliver rødt */

if (!DHTML) return;
var x = new getObj(name);
x.style.border = "solid " + col + " 2";
}

function checkfield(name)
{
if (!DHTML) return;
var box = new getObj(name);

   /* opret et objekt af typen getObj, som bruges til at hente
informationer ud af dokumentet */

if (!box.obj.value)
{

   /* Undersøg hvorvidt feltet er udfyldt og hvis ikke, skift farve på
feltet samt flyt fokus til feltet. */

changeCol('#FF0000',box.obj.name);
box.obj.focus();
return false;
}
return true;

}

</Script>

Formularen der kalder dette script:

<html>
<p><label class="emne">Firmanavn * </label> <input type="text"
name="Firmanavn" class="felt" id="firmanavn" onBlur="checkfield
('Firmanavn'); return false;"></p>
<p><label class="emne">Att. person * </label> <input type="text"
name="AttPerson" class="felt" id="attperson" onBlur="checkfield
('AttPerson'); return false;")></p>
</html>

Mit problem er, at formularen går i "selvsving" eller loop, da cursoren
hopper frem og tilbage imellem de 2 felter, og dermed kan jeg ikke komme
ud igen...

Hvad kan jeg gøre for at undgå dette...???

mvh
Lars Christensen

 
 
Chrisser (21-10-2003)
Kommentar
Fra : Chrisser


Dato : 21-10-03 07:29

Lars Christensen wrote:
> Håber der er nogen der kan hjælpe her...
>
> Jeg har en bestillingsformular, hvor jeg gerne vil have de enkelte
> felter valideret, når bruger "hopper" igennem formularen.
>
> Et antal af felterne skal være udfyldt, og jeg har lavet et lille
> javascript, der validerer feltet ved "onBlur":

[snip kode]

> Mit problem er, at formularen går i "selvsving" eller loop, da
> cursoren hopper frem og tilbage imellem de 2 felter, og dermed kan
> jeg ikke komme ud igen...
>
> Hvad kan jeg gøre for at undgå dette...???

Uden at have testet din kode vil jeg foreslå at du prøver at kalde din
validering på onchange istedet for på onblur.

Chrisser



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste