Avatar billede Slettet bruger
02. oktober 2000 - 12:27 Der er 18 kommentarer og
5 løsninger

Alle felter SKAL udfyldes

Jeg har lavet en form (spørgeskema) og når der trykkes på send skal der komme en kommentar \"ALLE FELTER SKAL UDFYLDES\" hvis altså ikke alle felter er udfyldt. Hvilken kommando skal jeg bruge til dette og skal den laves for hvert enkelt felt?

Et andet problem er at hvis der trykkes på ENTER bliver skemaet sendt, det ville jeg gerne undgå da nogle tror at man hopper mellem spørgsmålene med ENTER, det skal gerne være så man KUN kan sende via musen som trykker på SEND knappen.
Avatar billede tdaugaard Nybegynder
02. oktober 2000 - 12:38 #1
Til dit første ?, der skal du bruge et lille JavaScript som checker formen når den bliver \"submitted\".

f.eks.

<script language=\"JavaScript\">
function checkform(theform) {
if (theform.navn.value==\"\") {
alert(\'Udfyld venligst feltet Navn!\');
return (false);
}
if (theform.postnrby.value==\"\") {
alert(\'Udfyld venligst feltet Post Nr./By!\');
return (false);
}
return (true);
}

Så skrive du i <form action=\"bla bla\"..> OnSubmit=\"return checkform(this);\"

f.eks.

<form action=\"/cgi-bin/formmail.pl\" method=\"post\" onsubmit=\"return checkform(this);\">
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:39 #2
Du skal bruge javascript...

<script>
function CheckFelter(form) {
  if (form.felt1.value == \"\" || form.felt2.value == \"\") {
    alert(\"Du skal udfylde begge felter!\")
    form.felt1.focus()
    return false
  }
  return true
}
</script>

<form action=\"dinfil\" method=\"post\" onSubmit=\"return CheckFelter(this)\">

Sådan gøres det... du skal erstatte felt1 og felt2 med dine egne navne (forlæng gerne if-sætningen)!

- Anders
Avatar billede tdaugaard Nybegynder
02. oktober 2000 - 12:40 #3
Mht. til dit andet ? så tror jeg det NEMMESTE vil være at lave en lille note som man ikke kan undgå at se hvor der står:

\"HUSK! Brug Tabulator (TAB) tasten til at flytte mellem felterne!\"
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:40 #4
upz... sorry... havde ikke lige set thomas\' indlæg!!

- Anders
Avatar billede tdaugaard Nybegynder
02. oktober 2000 - 12:41 #5
*lol* man kan godt se hvem der har lavet mest JavaScript her (halnet/anders)..
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:42 #6
Det andet er ligemeget når du har javascripten... dine besøgende kan IKKE submitte uden at de har udfyldt alle felter..

- Anders
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:44 #7
Ja, i ca. en måned... LÅÅL!
Det simple javascript er MEGET nemt... :o)

- Anders
Avatar billede tdaugaard Nybegynder
02. oktober 2000 - 12:44 #8
hi hi .. som jeg sagde, man kan godt se/læse hvem der fatter mest JavaScript her :)
Avatar billede tdaugaard Nybegynder
02. oktober 2000 - 12:45 #9
Nåå .. well jeg tror jeg startede for under 14 dage siden med sådan noget her .. *gg*
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:49 #10
Du kan evt lave denne alert... så blondinesikrer din dit script!!

alert(\"Du skal udfylde begge felter!\")
=
alert(\"Du skal udfylde begge felter!\\n\\nDu skal trykke TAB for at springe mellem felter.\")

Jeg tror nu ikke det er mange der trykker enter for at hoppe mellem felter!!!

- Anders
Avatar billede p_johansen Nybegynder
02. oktober 2000 - 12:51 #11
... eller brug følgende i din form

<form XXXXX method=\"post\">
<input type=\"hidden\" name=\"required\" value=\"Navn,Adresse,Pnr,By\">

Preben
Avatar billede p_johansen Nybegynder
02. oktober 2000 - 12:53 #12
Sorry - herefter laver du din egen svarside f.eks med Alle felter skal udfyldes henvisningen sker i:

<input type=\"hidden\" name=\"missing_fields_redirect\" value=\"http://www.ditdomæne.dk/fejl.htm\">

Preben
Avatar billede halnet Nybegynder
02. oktober 2000 - 12:57 #13
Det er da en skummel og lang omvej... så skal der jo ligge et script i baggrunden og tjekke om felterne ER udfyldt... Med javascript gøres det direkte på siden!!

Selvfølgelig hvis du vil have det 100% sikkert, er det en god idé at tjekke om felterne er udfyldt inden du (sender mailen || opdaterer db\'en || osv).

Det er meget nemt... har du mulighed for PHP?

- Anders
Avatar billede Slettet bruger
02. oktober 2000 - 12:58 #14
Er det muligt at jeg må sende formen til en af jer og få jer til at lave et eks for jeg kan ik få det igang.....
Avatar billede halnet Nybegynder
02. oktober 2000 - 13:00 #15
Læg det op her på eksperten... eller send det til anders@halnet.dk

- Anders
Avatar billede p_johansen Nybegynder
02. oktober 2000 - 13:02 #16
At bruge form - itself - er da i mine øjne det mest simple og ja -> Peters mail den bare til preben@pjohansen.net

Preben
Avatar billede lthrane Nybegynder
02. oktober 2000 - 13:03 #17
Jeg så engang dette tjek, der tjekker alle felter på en form uden at man skal angive felternes navne:

function IsFormComplete(FormName)
{
var x      = 0
var FormOk  = true

while ((x < document.forms[FormName].elements.length) && (FormOk))
  {
    if (document.forms[FormName].elements[x].value == \'\')
    {
        alert(\'Please enter the \'+document.forms[FormName].elements[x].name +\' and try again.\')
        document.forms[FormName].elements[x].focus()
        FormOk = false
    }
    x ++
  }
return FormOk
}

Jeg har ikke testen den - det er en rå kopi.....

lthrane
Avatar billede Slettet bruger
02. oktober 2000 - 13:22 #18
Er det egentligt ik muligt at \"slukke\" for funktionen i ENTER tasten??
Avatar billede halnet Nybegynder
02. oktober 2000 - 13:24 #19
Tror det ik!

- Anders
Avatar billede Slettet bruger
02. oktober 2000 - 13:25 #20
Øv kan jeg så kun tilføje.....
Avatar billede doeleman Nybegynder
02. oktober 2000 - 13:55 #21
Fundet på http://www.irt.org

Is it possible to stop Microsoft Internet Explorer 4 submitting a form when enter is pressed?

Try:
<script language=\"JavaScript\"><!--
if (document.layers) document.captureEvents( Event.KEYPRESS);
window.onkeypress = keyhandler;
function keyhandler(e) {
  var event = e ? e : window.event;
  if (event.keyCode == 13) return false;
}
//--></script>

<form name=\"myForm\" onSubmit=\"alert(\'submitted\'); return false;\">
<input type=\"text\" name=\"field1\" onKeyPress=keyhander(e)\">
<input type=\"text\" name=\"field2\" onKeyPress=keyhander(e)\">
</form>

Avatar billede Slettet bruger
02. oktober 2000 - 14:39 #22
Jeg har igen forsøgt mig, i håb om at jeg kunne få en lille box op på skærmen men enten har jeg placeret det forkert ellers virker det bare ikke... nogle forslag?

<html>
<head>
    <meta http-equiv=\"Content-Language\" content=\"da\">
    <meta name=\"Generator\" content=\"Microsoft FrontPage 4.0\">
    <meta name=\"ProgId\" content=\"FrontPage.Editor.Document\">
    <title>Forbruger Unders&oslash;gelse</title>

<script language=\"JavaScript\">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+\".location=\'\"+selObj.options[selObj.selectedIndex].value+\"\'\");
  if (restore) selObj.selectedIndex=0;
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf(\"?\"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_jumpMenuGo(selName,targ,restore){ //v3.0
  var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}
//-->



<script>
function CheckFelter(form) {
  if (form.14.value == \"\" || form.15.value == \"\") {
    alert(\"Du skal udfylde alle felter!\")
    form.14.focus()
    return false
  }
  return true
}
</script>





<script language=\"JavaScript\"><!--
if (document.layers) document.captureEvents( Event.KEYPRESS);
window.onkeypress = keyhandler;
function keyhandler(e) {
  var event = e ? e : window.event;
  if (event.keyCode == 13) return false;
}
//--></script>





</head>

<body bgcolor=\"#FFFFFF\" background=\"back.gif\" text=\"#000000\" link=\"#000000\" vlink=\"#000000\" alink=\"#000000\">
<p align=\"left\">
<FORM method=POST action=\"http://www.domæne.dk/cgibin/formmail.pl\" onsubmit=\"return checkform(this);\">
  <p><font color=\"#000000\">
    <input name=\"recipient\" type=\"HIDDEN\" value=\"post@domæne.dk\">
    <input name=\"subject\" type=\"HIDDEN\" value=\"UNDERSØGELSE (NEJ Ingen rejse i sidste 3 mdr)\">
    <INPUT TYPE=HIDDEN NAME=redirect VALUE=\"http://www.domæne.dk/test/tak.htm\">
    </font></p>
  <p><strong><font face=\"Verdana\" size=\"1\" color=\"#FFFFFF\"> </font></strong></p>
  <strong><font face=\"Verdana\" size=\"1\" color=\"#FFFFFF\"><div align=\"center\"></div>
  </font></strong>
  <ul>
    <li><font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=14>
      </a> Hvad er Deres k&oslash;n?</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"radio\" name=\"14\" value=\"1\">
      Mand <br>
      <input type=\"radio\" name=\"14\" value=\"2\">
      Kvinde <br>
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=15>
      </a> Hvad er Deres alder?</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"Text\" name=\"15\" size=\"3\" maxlength=\"3\">
      &aring;r</font><font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=17>
      </a> Hvad er Deres senest afsluttede uddannelse?</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"radio\" name=\"17\" value=\"1\">
      Folkeskole 7 år eller kortere <br>
      <input type=\"radio\" name=\"17\" value=\"2\">
      Folkeskole 8 – 10 år <br>
      <input type=\"radio\" name=\"17\" value=\"3\">
      Mellemskole-/realeksamen/præliminæreksamen <br>
      <input type=\"radio\" name=\"17\" value=\"4\">
      Student/HF/HH/HG/HTX <br>
      <input type=\"radio\" name=\"17\" value=\"5\">
      Erhvervsuddannelse (grundlæggende/afsluttende) <br>
      <input type=\"radio\" name=\"17\" value=\"6\">
      Videregående uddannelse (til og med 3 år) <br>
      <input type=\"radio\" name=\"17\" value=\"7\">
      Videregående uddannelse (mere end 3 år) <br>
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=18>
      </a> Hvad er Deres erhverv</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"radio\" name=\"18\" value=\"1\">
      Arbejder, ufaglært (ikke specialarbejder) <br>
      <input type=\"radio\" name=\"18\" value=\"2\">
      Arbejder, ufaglært (specialarbejder) <br>
      <input type=\"radio\" name=\"18\" value=\"3\">
      Arbejder, faglært <br>
      <input type=\"radio\" name=\"18\" value=\"4\">
      Funktionær/tjenestemand, lavere <br>
      <input type=\"radio\" name=\"18\" value=\"5\">
      Funktionær/tjenestemand, højere <br>
      <input type=\"radio\" name=\"18\" value=\"6\">
      Selvstændig landbruger/gartneri/fiskeri <br>
      <input type=\"radio\" name=\"18\" value=\"7\">
      Selvstændig detailhandler/håndværker <br>
      <input type=\"radio\" name=\"18\" value=\"8\">
      Selvstændig i øvrigt <br>
      <input type=\"radio\" name=\"18\" value=\"9\">
      Lærling/elev <br>
      <input type=\"radio\" name=\"18\" value=\"10\">
      Skoleelev/studerende <br>
      <input type=\"radio\" name=\"18\" value=\"11\">
      Ude af erhverv (pensionist, efterlønsmodt. og lign.) <br>
      <input type=\"radio\" name=\"18\" value=\"12\">
      Gift uden selverhverv/hjemmegående <br>
      <input type=\"radio\" name=\"18\" value=\"13\">
      Medhjælpende ægtefælle <br>
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=19>
      </a> Hvad er <u>husstandens</u> samlede indkomst? (brutto)</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"radio\" name=\"19\" value=\"1\">
      Indtil 99.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"2\">
      100.000 – 199.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"3\">
      200.000 – 299.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"4\">
      300.000 – 399.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"5\">
      400.000 – 499.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"6\">
      500.000 – 599.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"7\">
      600.000 – 699.999 kr. <br>
      <input type=\"radio\" name=\"19\" value=\"8\">
      700.000 kr. og derover <br>
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=20>
      </a> Antal personer i husstanden</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"radio\" name=\"20\" value=\"1\">
      1 person <br>
      <input type=\"radio\" name=\"20\" value=\"2\">
      2 personer <br>
      <input type=\"radio\" name=\"20\" value=\"3\">
      3 personer <br>
      <input type=\"radio\" name=\"20\" value=\"4\">
      4 personer <br>
      <input type=\"radio\" name=\"20\" value=\"5\">
      5+ personer <br>
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=21>
      </a> Indtast venligst postnummer</font></li>
  </ul>
  <p> </p>
  <blockquote>
    <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
      <input type=\"Text\" name=\"21\" size=\"4\" maxlength=\"4\">
      </font></p>
  </blockquote>
  <p> </p>
  <ul>
    <li> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\"><a name=22>
      </a> Indtast venligst emailadresse</font></li>
  </ul>
  <p>
    <input type=\"Text\" name=\"22-12\" size=\"50\">
  </p>
  <blockquote>&nbsp; </blockquote>
  <p>&nbsp; </p>
  <p> <font face=\"Arial, Helvetica, sans-serif\" color=\"#000000\">
    <input type=\"submit\" value=\"Send svar\" name=\"submit\">
    </font></p>
  <strong><font face=\"Verdana\" size=\"1\" color=\"#FFFFFF\">
  <div align=\"center\">
    <p align=\"left\">&nbsp;</p>
  </div>
  </font></strong>
</form>
<p>&nbsp;</p>
<strong><font face=\"Verdana\" size=\"1\" color=\"#FFFFFF\"><font COLOR=\"Silver\" SIZE=\"2\">
<p align=\"left\">&nbsp;</p>
</font> </font></strong>
</body>
</html>
Avatar billede mpj Nybegynder
03. oktober 2000 - 20:40 #23
Det du har glemt er at give din form et navn...
Kald den form!

Men hvis det er et reserveret ord så brug form1 og husk at ændr det i dit script!
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