Avatar billede Slettet bruger
05. juni 1999 - 01:32 Der er 8 kommentarer og
1 løsning

Hvor er fejlen???

Hejsa!!

Jeg har lavet et javascript der skulle kunne validere nogle input felter og sikre at de KUN indeholder tal! Det virkede også fint, men pludslig virkede det kraft.... ikke, ja jeg må naturligvis have slettet et eller andetmen jeg kan bare ikke finde fejl derfor 75 point til den der kan få det til at virke igen!!!

<html>
<head>

  <title>
    Pizza - bestilling
  </title>

  <link rel="STYLESHEET" type="text/css" href="style.css"> 
 
  <SCRIPT>

  function vali(str) {
    ok = true;
    for(i=0; (i <= str.length - 1) &&  ok; i++)
    {
      if ((str.charAt(i) >= ''0'') && (str.charAt(i) <= ''9'') &#124;&#124;&#124;&#124; !(str.charAt(i) == '' '')) {ok = true;}
      else { ok = false;}
    }       
  return ok
  }
 
  function validering(str, nr) {
 
    if (!(vali(str)) && (nr == 1)) { alert(''Du skal indtaste et tal!''); document.menu.nummer1.focus(); document.menu.nummer1.value = 0;}
 
    if (!(vali(str)) && (nr == 2)) { alert(''Du skal indtaste et tal!''); document.menu.nummer2.focus(); document.menu.nummer2.value = 0;}
 
 
  }
   
   
</SCRIPT>

</head>

<body>
<form name="menu" action="bestilling.asp" method="post">
<table width="700" height="0" border="0" cellpadding="2" cellspacing="0" align="center">
  <tr>
    <td colspan="9" align="right">
      <i><b>Menu kort</b></i>
    </td>
  </tr>
  <tr>
    <td valign="middle" colspan="6">
      <hr noshade>
    </td>
  </tr>
  <tr>
    <td colspan="9">
      <b>Vælg det antal pizzaer du ønsker:</b>
      <br>
    </td>
  </tr>
<tr colspan="5" align=left valign=top> 
<th>Nummer</th><th>Navn</th><th>Beskrivelse</th><th>Pris</th><th>Antal</th></tr>

  <tr colspan="5" align=left valign=top> 
    <td bgcolor="#5dcd54"valign="top">1</td>
    <td bgcolor="#5dcd54" valign="top">Napoli</td>
    <td bgcolor="#5dcd54" valign="top">Ost, rejer</td>
    <td bgcolor="#5dcd54" valign="top">45</td>
    <td bgcolor="#5dcb54"><input type="text" name="nummer1" size="2" maxlength="2" value="0" onBlur="validering(document.menu.nummer1.value, 1)"</input></td>
  </tr>     

  <tr colspan="5" align=left valign=top> 
    <td valign="top">2</td>
    <td valign="top">Juventus</td>
    <td valign="top">Oksemørbrad</td>
    <td valign="top">35</td>
    <td><input type="text" name="nummer2" size="2" maxlength="2" value="0" onBlur="validering(document.menu.nummer2.value, 2)"</input></td>
  </tr>             
</table>
<br>
<center>
<input type="submit" value="Næste" >
<input type="reset" name="Reset" value="Reset">
</center>
</form>
</body>
</html>

Med venlig hilsen

Samuel Sayilgan
Avatar billede mukke Nybegynder
05. juni 1999 - 01:51 #1
ret her:

      if ((str.charAt(i) >= '0') && (str.charAt(i) <= '9') &#124;&#124;&#124;&#124; (str.charAt(i) == ' ')) {ok = true;}

Det er en enkel "not" (!) jeg har fjernet.
Avatar billede Slettet bruger
05. juni 1999 - 01:57 #2
Virker det hos dig???

Jeg har forsøgt, det virker ikke hos mig, hverken Netscape eller IE
Avatar billede cyberesben Nybegynder
05. juni 1999 - 02:30 #3
jeg kigger lige på det... jeg kan sgu godt løse det tror jeg
Avatar billede cyberesben Nybegynder
05. juni 1999 - 02:44 #4
ok, hvis du skriver sådan her, så virker det

<HTML>
<HEAD>
  <TITLE>Pizza - bestilling</TITLE>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="style.css"> 
<SCRIPT LANGUAGE="JavaScript">
function validering(formNavn)
{
if (isNaN(formNavn.value)) {alert('DU SKAL SKRIVE ET TAL!!! \n \n #%&@£€{¤%/#¤'); formNavn.focus(); formNavn.value = 0;}
}
</SCRIPT>
</HEAD>

<BODY>
<FORM NAME="menu" ACTION="bestilling.asp" METHOD="post">
<TABLE WIDTH="700" HEIGHT="0" BORDER="0" CELLPADDING="2" CELLSPACING="0" ALIGN="center">
  <TR>
    <TD COLSPAN="9" ALIGN="right">
      <I><B>Menu kort</B></I>
    </TD>
  </TR>
  <TR>
    <TD VALIGN="middle" COLSPAN="6">
      <HR NOSHADE>
    </TD>
  </TR>
  <TR>
    <TD COLSPAN="9">
      <B>Vælg det antal pizzaer du ønsker:</B>
      <BR>
    </TD>
  </TR>
<TR COLSPAN="5" ALIGN=left VALIGN=top> 
<TH>Nummer</TH><TH>Navn</TH><TH>Beskrivelse</TH><TH>Pris</TH><TH>Antal</TH></TR>

  <TR COLSPAN="5" ALIGN=left VALIGN=top> 
    <TD BGCOLOR="#5dcd54"VALIGN="top">1</TD>
    <TD BGCOLOR="#5dcd54" VALIGN="top">Napoli</TD>
    <TD BGCOLOR="#5dcd54" VALIGN="top">Ost, rejer</TD>
    <TD BGCOLOR="#5dcd54" VALIGN="top">45</TD>
    <TD BGCOLOR="#5dcb54"><INPUT TYPE="text" NAME="nummer1" SIZE="2" MAXLENGTH="2" VALUE="0" ONBLUR="validering(document.forms.menu.nummer1);"</INPUT></TD>
  </TR>     

  <TR COLSPAN="5" ALIGN=left VALIGN=top> 
    <TD VALIGN="top">2</TD>
    <TD VALIGN="top">Juventus</TD>
    <TD VALIGN="top">Oksemørbrad</TD>
    <TD VALIGN="top">35</TD>
    <TD><INPUT TYPE="text" NAME="nummer2" SIZE="2" MAXLENGTH="2" VALUE="0" ONBLUR="validering(document.forms.menu.nummer2);"</INPUT></TD>
  </TR>             
</TABLE>
<BR>
<CENTER>
<INPUT TYPE="submit" VALUE="Næste" >
<INPUT TYPE="reset" NAME="Reset" VALUE="Reset">
</CENTER>
</FORM>
</BODY>
</HTML>
Avatar billede cyberesben Nybegynder
05. juni 1999 - 02:53 #5
må jeg ikke også få en af jeres pizzaer bragt ud hvis det virker? PLEASE!
Avatar billede swjensen Nybegynder
05. juni 1999 - 04:54 #6
>> cyberesben

Hvis man skriver
.5
bliver man ikke svinet til
Avatar billede swjensen Nybegynder
05. juni 1999 - 04:56 #7
eller
-3
Avatar billede Slettet bruger
05. juni 1999 - 11:15 #8
Jeg skulle lige sove!! Gæt hvad jeg har drømt om! ja, Javascript og validering :-(

Det virker!! cyberesben du kan ikke få pizzaer bragt ud, fordi dette er et skole projekt, men point dem får du

Mange tak
Avatar billede cyberesben Nybegynder
05. juni 1999 - 12:43 #9
hvis i vil have det så kan jeg godt gøre så den brokker sig over . eller -
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