Avatar billede neander Nybegynder
02. oktober 2003 - 12:15 Der er 9 kommentarer og
1 løsning

Prompt ved manglende indtastning

Jeg har en form med 4 felter. Er der en af dem der er tomme når man trykker på "gem" så kan man ikke submitte.

Hvordan tilføjer jeg en advarsels-prompt på en submitknap?
Avatar billede grunken Nybegynder
02. oktober 2003 - 12:22 #1
hurtigt eksempel :)

<script type="text/javascript">
function checkform(){
  if (document.FORMNAVN.FELTNAVN.value =""){
    alert('blabla');
    return false
  }
}
</script>

<form ... onsubmit="return checkform()">
<input ...>
<input type"submit">
</form>
Avatar billede neander Nybegynder
02. oktober 2003 - 12:26 #2
Hvordan fletter jeg det sammen? Jeg har 4 felter i alt, se her:

<form action="opret_nyhed2.asp" method="POST">

<table border="0" border="No" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF">
<tr>
<td><font face="<%= fontface %>" size="2">Overskrift (dansk)<br>
<input type="text" name="dk_overskrift" size="50"></td>
<td><font face="<%= fontface %>" size="2">Overskrift (engelsk)<br>
<input type="text" name="uk_overskrift" size="50"></td>
</tr>

<tr>
<td><font face="<%= fontface %>" size="2">Br&oslash;dtekst (dansk)<br>
<textarea name="dk_nyhed" cols="40" rows="20"></textarea><br><br><input type="submit" value="Gem"></td>
<td valign="top"><font face="<%= fontface %>" size="2">Br&oslash;dtekst (engelsk)<br>
<textarea name="uk_nyhed" cols="40" rows="20"></textarea></td>
</tr>
</table>

</form>
Avatar billede neander Nybegynder
02. oktober 2003 - 12:38 #3
... det må vel egentlig være at sætte flere IF regler på funktionen:
function checkform(){
  if (document.FORMNAVN.FELTNAVN.value =""){
    alert('blabla');
    return false
  }
}

Men jeg er ikke ferm til javascript :-(
Avatar billede neander Nybegynder
02. oktober 2003 - 12:58 #4
Jeg har forsøgt mig med denne, som ikke virker:

<script type="text/javascript">
function checkform(){
  if (document.nyhedsform.dk_overskrift.value ="") || (document.nyhedsform.uk_overskrift.value ="") || (document.nyhedsform.dk_nyhed.value ="") || (document.nyhedsform.uk_nyhed.value =""){
    alert('Du mangler en indtastning et sted');
    return false
  }
}
</script>

Someone help me!!! Jeg har sat points lidt op, i håb om hurtigere respons.
Avatar billede neander Nybegynder
02. oktober 2003 - 13:05 #5
Jeg lukker, laver fejlmedd i ASP i stedet.
Avatar billede roenving Novice
02. oktober 2003 - 22:35 #6
Du kan sagtens gøre det simpelt i java script:

<form action="opret_nyhed2.asp" method="POST" onsubmit="valider(this)">

<script language="javascript" type="text/javascript">
function valider(f){
for(i=0;f.elements.length>i;i++){
  if((f.elements[i].tagName=='input'||f.elements[i].tagName=='textarea')&&f.elements[i].value.length==0){
    alert('You must provide a value for ' + f.elements[i].name);
    f.elements[i].focus();
    return false;
}
</script>
Avatar billede roenving Novice
02. oktober 2003 - 22:36 #7
Hov, der mangler lige et par } til sidst:

  }}
return true;
}
Avatar billede roenving Novice
02. oktober 2003 - 22:37 #8
Uff, jeg glemte lige det grundlæggende:

<form action="opret_nyhed2.asp" method="POST" onsubmit="return valider(this)">
Avatar billede neander Nybegynder
03. oktober 2003 - 09:53 #9
Hej roenving
Tak for hjælpen, men jeg er allerede færdig med det site, hvor jeg skulle bruge det. Jeg har løst det i ASP i stedet - med en fejlbesked og en tilbageknap i stedet.
Avatar billede roenving Novice
04. oktober 2003 - 11:40 #10
Helt ok, men jeg ville bare vise dig, hvor simpelt det kunne løses (og ikke mindst client-side !-)
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