30. april 2003 - 22:12Der er
13 kommentarer og 1 løsning
Fokus()
Jeg har en validering som jeg synes mener det sidste for at blive rigtig brugervenlig. Når alerten har lydt, skulle curseren gerne stille sig i det felt der mangler.
Jeg har forsøgt mig med document.regform.name.focus(); uden held.
<SCRIPT LANGUAGE="JavaScript"> <!-- Begin function checkrequired(which) { var pass=true; if (document.images) { for (i=0;i<which.length;i++) { var tempobj=which.elements[i]; if (tempobj.name.substring(0,8)=="required") { if (((tempobj.type=="text"||tempobj.type=="textarea")&& tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&& tempobj.selectedIndex==0)) { pass=false; break; } } } } if (!pass) { shortFieldName=tempobj.name.substring(8,30).toUpperCase(); alert("Du mangler at udfylde "+shortFieldName+" korrekt!"); //document.regform.name.focus(); return false; } else return true; } // End --> </SCRIPT>
Navn <input type="text" name="requirednavn"> <br> Mail <input type="text" name="requiredemail"> <br>
<!-- The first option in your pulldown menus must be set to 'selected' !! --> Hobby<select name="requiredhobby"> <option selected>Vælg en hobby <option>1 <option>2 <option>3 </select> <br> <textarea name="requiredkommentar"></textarea> <br> <input type=submit value="Submit"> </form>
og den valdidering er godt nok ikke min kop the, den tømmer alle felter man udfylder
Synes godt om
Slettet bruger
30. april 2003 - 22:29#3
Jeg forstår ikke helt hvordan jeg skal gøre det i praktis. Vi er ening om det er linien document.regform.name.focus(); der skal ændre i, men det du skriver er vel også det jeg har skrevet?!?!
Kunne jeg få dig til at gøre det lidt mere konkret?
Du må ikke bruge name som navn på noget, da det har sin selvstændige betydning i javascript -- enten som egenskab eller som funktion på adskillige andre grundlæggende funktioner -- så væk med name og find på noget andet, som jakobclausen 30/04-2003 22:16:25 skriver.
alert("Du mangler at udfylde "+shortFieldName+" korrekt!"); //document.regform.name.focus();
Skal være:
alert("Du mangler at udfylde "+shortFieldName+" korrekt!"); eval('document.regform.'+shortFieldName+'.focus()');
hth jes
Synes godt om
Slettet bruger
30. april 2003 - 22:45#10
Så jeg kan reduceret problemet til, at det er "name" der skal skiftet ud med noget andet, og så virker det. Jeg er bare lidt fatsvag, for jeg kan ikke lige finde ud af hvad jeg kan skrive i stedet for :(
document.regform.name.focus();
Synes godt om
Slettet bruger
30. april 2003 - 22:49#11
NAVN er null eller ikke et objekt, lyder fejlen på linien eval('document.regform.'+shortFieldName+'.focus()');
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.