Avatar billede basicq Nybegynder
22. april 2004 - 09:26 Der er 9 kommentarer og
2 løsninger

Validate document.write

Hey,
jeg har en form som jeg valider og det virker som sådan godt. Men jeg har nu fået nye tanker og vil ikke bruge alert() til at skrive mine fejl ud i. Jeg vil gerne have skrevet lidt grafik ud uden at min form forsvinder, altså på samme måde som med alert() men bare med en stump grafik som ligger over formen.

Her er et eks. på hvad jeg mener.

<table>
<tr>
    <td>
    Her vil jeg gerne have min fejl skrivet ud.   
    </td>
</tr>
<tr>
    <td>
    <form name="cont" action="" method="post"></form>
    <input type="text" name="navn">
    <input type="text" name="adresse">
    <input type="button" value="Send" onClick="java script:validate();">
    </form>
    </td>
</tr>
</table>

Jeg har prøvet med document.write men så forsvinder min form helt.
Avatar billede mm12010 Nybegynder
22. april 2004 - 09:29 #1
hvordan ser din validate-funktion ud?
Avatar billede mm12010 Nybegynder
22. april 2004 - 09:35 #2
ex:

<script type="text/javascript">
function validate(){
  el=document.forms['cont'].elements;
  for(i=0;i<el.length;i++){
    if(el[i].value==""){
      document.getElementById('err').innerHTML="Fejl: Alle felt skal udfyldes.";
      return false;
      }
    }
  document.forms['cont'].submit();
  }
</script>

...

<table>
<tr>
    <td id="err">
    Her vil jeg gerne have min fejl skrivet ud.</td>
</tr>
<tr>
    <td>
    <form name="cont" action="" method="post"></form>
    <input type="text" name="navn">
    <input type="text" name="adresse">
    <input type="button" value="Send" onClick="java script:validate();">
    </form></td>
</tr>
</table>
Avatar billede expandingpixel Nybegynder
22. april 2004 - 09:38 #3
<script type="text/javascript">
function validate(){
  el=document.forms['cont'].elements;
  for(i=0;i<el.length;i++){
    if(el[i].value==""){
      document.getElementById('errdiv').style.display = "inline";
      return false;
      }
    }
  document.forms['cont'].submit();
  }
</script>


<div id="errdiv" style="display: none;">err</div>
Avatar billede expandingpixel Nybegynder
22. april 2004 - 09:39 #4
så kan du style vidre med top & left så det kommer til at ligge pladask oven på formen...
Avatar billede roenving Novice
22. april 2004 - 12:19 #5
For at en document.write() kan køre skal den åbne dokumentet og det medfører at det bliver tomt ...

Eneste rigtige metode er at bruge .innerHTML, som også mm12010 har brugt, du vil dog få det til at være en del lettere og effektivere, hvis du flytter kaldet op i form-tagget ( og fjerner den misforståede filprotokol java script: !-)

<script type="text/javascript">
function validate(f){
  el=f.elements;
  for(i=0;i<el.length;i++){
    if(el[i].value==""){
      document.getElementById('err').innerHTML="Fejl: Alle felt skal udfyldes.";
      return false;
      }
    }
  return true;
  }
</script>

...

<table>
<tr>
    <td id="err">
    Her vil jeg gerne have min fejl skrivet ud.</td>
</tr>
<tr>
    <td>
    <form name="cont" action="" method="post" onsubmit="return validate(this);"></form>
    <input type="text" name="navn">
    <input type="text" name="adresse">
    <input type="button" value="Send">
    </form></td>
</tr>
</table>
Avatar billede basicq Nybegynder
22. april 2004 - 14:09 #6
Den kommer ikke ind i for løkken. el.length er null eller ikke et objeckt ??
Avatar billede basicq Nybegynder
22. april 2004 - 14:18 #7
ahhhh sorry der var jo lige en </form> for meget dammmm men takker.... Post et svar begge to.
Avatar billede mm12010 Nybegynder
22. april 2004 - 15:50 #8
selv tak :o)
Avatar billede roenving Novice
22. april 2004 - 15:59 #9
Velbekomme '-)
Avatar billede basicq Nybegynder
22. april 2004 - 17:34 #10
damm i var jo tre om det.... sorry
Avatar billede roenving Novice
22. april 2004 - 19:08 #11
-- tak for points ;~}
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

Seneste spørgsmål Seneste aktivitet
I dag 10:21 Ny printer, men hvilken Af mort1 i Printere
I går 19:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging