JS Script verhindert Formularverarbeitung

Sprint

Erfahrenes Mitglied
Hallo,

ich habe hier ein Problem mit einem kurzen Script, das mich noch zum Wahnsinn treibt.
Kurz zur Funktion der Seite. Neben den üblichen Userdaten werden auch die zugeordneten Module ein- und ausgeschaltet und über zwei Felder werden vom vorgegebenen EK mit einem Faktor der VK bestimmt bzw. umgekehrt über den eingegebenen VK der benötigte Faktor errechnet. Das angehängte Beispiel ist eine gekürzte Version der originalen Seite, das sich genauso verhält wie die vollwertige Seite auf dem Server.
Werden nun "normale" Daten geändert wie z.B. der Name, wird das Formular einwandfrei verarbeitet. Werden aber zuerst bzw. nur die Faktoren oder VKs geändert, wird das Formular nicht mehr abgeschickt und der Fokus springt nur auf ein anderes Feld. Es gibt auf dem Server noch ein anderes Programm, das sich nur in unwichtigen Teilen unterscheidet und in den relevanten Teilen gleich ist. Dieses Formular wird immer verarbeitet, egal wie viele Faktoren oder VKs geändert werden. Kopiere ich diesen Quelltext aber raus und teste ihn lokal, tritt der gleiche Fehler auch wieder auf.
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<title>Inhalt</title>
		<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
		<script type="text/JavaScript" language="JavaScript">
function calculatevk(intIndex, summeek) {
	fakt5 = parseFloat( document.edituser.elements['fakt['+intIndex+']'].value.replace(/,/ , ".") );
	document.edituser.elements['summe['+intIndex+']'].value = (summeek / fakt5).toString().replace(/\./ , ",");
}
function calculatefaktor(intIndex, summeek) {
	endpreis = parseFloat( document.edituser.elements['summe['+intIndex+']'].value.replace(/,/ , ".") );
	document.edituser.elements['fakt['+intIndex+']'].value = (summeek / endpreis).toString().replace(/\./ , ",");
}
</script>
		<link href="../css.css" type="text/css" rel="stylesheet" />
	</head>
	<body>
		<form name="edituser" action="editberater.php" method="post" enctype="multipart/form-data">
			<table width="100%" border="0" cellspacing="2" cellpadding="2">
				<tr>
					<td valign="top" width="268">Name:</td>
					<td valign="top"><input type="text" name="name" value="willi wuff" size="30" maxlength="50" /></td>
				</tr>
				<tr>
					<td valign="top" width="268">zugelassene Module:</td>
					<td valign="top">
						<table border="0" cellspacing="0" cellpadding="4">
							<tr bgcolor="#eeeeee">
								<td valign="bottom" width="30"><input type="checkbox" name="zulassung[]" value="28" /></td>
								<td valign="bottom">Modul x</td>
								<td>2470.73<br />
									<input onkeyup="calculatevk(28,2470.73170732)" type="text" name="fakt[28]" value="0.7000000000" size="6" maxlength="12" /> &lt;=&gt;</td>
								<td><br />
									<input onkeyup="calculatefaktor(28,2470.73170732)" type="text" name="summe[28]" value="3529.61672474" size="8" maxlength="7" /></td>
							</tr>
						</table>
					</td>
				</tr>
				<tr>
					<td valign="top" width="268"></td>
					<td valign="top"><input type="submit" name="submitButtonName" value="Änderungen sichern" /></td>
				</tr>
			</table>
		</form>
	</body>
</html>
Kann mir jemand sagen, wo hier das Problem liegt?
 
Hi,

ich kann den Fehler bei mir nicht nachvollziehen. Egal in welcher Reihenfolge ich die Felder ausfülle, das Formular wird korrekt versandt.

Ciao
Quaese
 
Hi,

ich kann den Fehler bei mir nicht nachvollziehen. Egal in welcher Reihenfolge ich die Felder ausfülle, das Formular wird korrekt versandt.

Ciao
Quaese

Was hast du denn für einen Browser genommen? Scheint wohl ein Webkit Problem zu sein. Sowohl Safari als auch Chrome zeigen das beschriebene Verhalten, im FF gehts, wie ich gerade festgestellt habe.
 

Neue Beiträge

Zurück