Alexander: Javascript im Ausgabeform - läuft nicht mehr!?

Beitrag lesen

Hallo!
Wollt ein Javascript in mein html Formular einsetzen, welches ich von dem Script zurückschicke und in das die daten übernommen wurden....
Jedenfalls würde ich gerne einige Felder überprüfen, halt ob ausgefüllt oder gültig....
Das geht ja eigentlich ziemlich einfach mit Javascript, nur sobald ich das Script einfüge,geht nix mehr(internal server error), aber nur wenn ich <script>.... in den <head> Bereich einfüge.
Dannhabe ich noch onsubmit.... in das formtag eingefügt, ist alles richtig so und funktionieret in einem "normalen" Formular, aber in perl geht da irgendwas nicht. Aber Ihr hattet doch gesagt man könne auch Javascript verwenden?
Folgendermaßen sieht das Script jetzt aus:

#!/usr/bin/perl

use CGI qw(param);

print "Content-type: text/html\n\n" ;

$Hersteller = param("Hersteller");
$Produkt = param("Produkt");
$Beschreibung = param("Beschreibung");
$Fzg_Herst = param("Fzg_Herst");
$Fzg_Typ = param("Fzg_Typ");
$Fzg_Bez = param("Fzg_Bez");
$Preis = param("Preis");
$Europreis = sprintf("%.2f",$Preis / 1.95583);
$MwSt = sprintf("%.2f",$Preis / 7.25);
$Summe = sprintf("%.2f",$Preis);

print <<EOF ;

<head>
<title>CGI Results</title>

<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.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);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') {
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000" background="/images/rh-bgr.jpg" leftmargin="0" topmargin="0">
<img src="/images/onlinebestellung_text.gif" width="510" height="57">
<form name="form1" method="post" action="/cgi-bin/form3.cgi" onSubmit="MM_validateForm('Eingabe_Hersteller','','R','Eingabe_Typ','','R','KW','','RinRange20:400','EZ','','R');return document.MM_returnValue">

.
.
.
.

Vielleicht weiß jemand, wo der Fehler liegen könne, ohne das Javascript ging alles ohne Probleme!
Gruß
Alex