PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 9 Variablen in Javascript summieren



Clemens
06-09-2006, 14:24
Ich habe 9 Variablen die v_318 bis v_326 lauten. Für jede Variable gibt es ein kleines Kästchen wo der User jeweils eine Zahl eingeben kann. Nun soll Javascript in einem zehnten Kästchen (das es noch nicht gibt) diese Zahlen immer sofort zusammenzählen wenn der User etwas eingibt. Ich hab leider von Javascript praktisch keine Ahnung und meine Versuche sind alle kläglich gescheitert. Zum testen hab ich mal (mit copy und paste Programmierkenntnissen :)) die ersten beiden Variablen in das Kästchen der dritten summieren wollen (siehe unten). War aber nix. Kann da jemand helfen? Freue mich sehr über Hilfe, danke.
Clemens


<script language="Javascript">
<!--
function summe()
{
var summe = 0;
summe = parseInt(document.forms[0].v_318.value);
summe += parseInt(document.forms[0].v_319.value);

if(summe>=0)
{
document.forms[0].v_320.value=summe;
}

}
//-->
</script>

<input type=text name="v_318" onChange="summe();"><br>
<input type=text name="v_319" onChange="summe();"><br>
<br>
<div name="summe">
Summe: <input class="hans" type=text name="v_320" onChange="summe();" background-color="red"><br>

</div>

quinte17
06-09-2006, 14:42
<script language="Javascript">
<!--
function summe()
{
var summe = 0;
summe = parseInt(document.forms[0].v_318.value);
summe += parseInt(document.forms[0].v_319.value);

if(summe>=0)
{
document.forms[0].v_320.value=summe;
}

}
//-->
</script>
<form>
<input type=text name="v_318" onChange="summe();"><br>
<input type=text name="v_319" onChange="summe();"><br>
<br>
<div name="summe">
Summe: <input class="hans" type=text name="v_320" onChange="summe();" background-color="red"><br>

</div>
</form>

greetz

Clemens
06-09-2006, 16:03
Danke ;) klappt gut, aber leider nicht wie gedacht.

Leider sind die 9 Variablenkästchen vorgegeben. Ich kann keine neuen 9 Kästchen machen, weil das Ganze eine Online-Umfrage wird und die Software sonst nicht korrekt zählt. Die vorgegebenen Kästchen sind wie unten angegeben definiert. Es wird nicht onChange="summe();" sondern value="" verwendet. Wie muss ich dann den Code anpassen? Oder klappt das dann gar nicht? v_318 und v_319 lauten im Quellcode z.B.:

<tr>
<td class="answertext" >Führung&nbsp;&nbsp;</td>
<td class="answerelement" style="text-align:left;">
<input type="text" name="v_318" value="" size="3" maxlength="3" />
</td>
<td class="answerend" width="100%" align="right">&nbsp;</td>
</tr>
<tr>
<td colspan="3"><img src="layout/t.gif" width="1" height="15" border="0" alt="" /><br /></td>
</tr>
<td class="answertext2" >Politik und Strategie&nbsp;&nbsp;</td>
<td class="answerelement2" style="text-align:left;">
<input type="text" name="v_319" value="" size="3" maxlength="3" />
</td>
<td class="answerend2" width="100%" align="right">&nbsp;</td>
</tr>
<tr>
<td colspan="3"><img src="layout/t.gif" width="1" height="15" border="0" alt="" /><br /></td>
</tr>

quinte17
07-09-2006, 10:55
huhu, ich weiß leider nicht was du genau willst?
ich habe nur dein beispiel genommen und lauffähig gemacht, ich habe dir nicht eine lösung für genau dein problem erzeugt.
bitte benutze die [ code ] tags, das machts um einiges lesbarer.

greetz

Joghurt
07-09-2006, 13:36
weil das Ganze eine Online-Umfrage wird und die Software sonst nicht korrekt zählt.Gehe niemals davon aus, dass die Software auf Clientseite die korrekten Werte liefert, oder das JavaScript überhaupt aktiviert ist.
Wenn du die Summe verarbeiten willst, zähle sie auf dem Server zusammen.

Clemens
08-09-2006, 15:56
Wieso [code] tags? Sind das nicht die Code tags die ich gepostet habe. Was meinst du damit?
Ich kann den Fragebogen online erstellen. Die User haben bei einer Frage 9 Kästchen (Variablen) in die Sie Zahlen eingeben sollen. Alle 9 Variablen zusammen sollen genau 100% ergeben. Damit der User nun weiß wie viel % er schon vergeben hat, will ich ihm das gleich anzeigen. Die Summe der Variablen mach ich also nur als Hilfe für den User, nicht als Antwort einer Frage.

rais
08-09-2006, 17:00
Wieso [code] tags? Sind das nicht die Code tags die ich gepostet habe. Was meinst du damit?

vergleiche:
bla <input type=text name="v_318" onChange="summe();"><br> blubb
mit:
bla
<input type=text name="v_318" onChange="summe();"><br> blubb

MfG,

Clemens
12-09-2006, 15:51
Achso, also dann versuch ichs mal

<tr>
<td class="answertext" >Führung&nbsp;&nbsp;</td>
<td class="answerelement" style="text-align:left;">
<input type="text" name="v_318" value="" size="3" maxlength="3" />
</td>
<td class="answerend" width="100%" align="right">&nbsp;</td>
</tr>
<tr>
<td colspan="3"><img src="/uc/food/layout/t.gif" width="1" height="15" border="0" alt="" /><br /></td>
</tr>
<tr>
<td class="answertext2" >Politik und Strategie&nbsp;&nbsp;</td>
<td class="answerelement2" style="text-align:left;">
<input type="text" name="v_319" value="" size="3" maxlength="3" />
</td>
<td class="answerend2" width="100%" align="right">&nbsp;</td>
</tr>
<tr>
<td colspan="3"><img src="/uc/food/layout/t.gif" width="1" height="15" border="0" alt="" /><br /></td>
</tr>

quinte17
12-09-2006, 15:54
und was soll uns dieser codeschnipsel nun sagen?

Clemens
12-09-2006, 16:08
Ich hege die Hoffnung, dass Javascript versierte Personen mit diesem Code sehen können, wie die Variablen von meiner Umfrage-Software gehandelt werden und dass dies eine Hilfe ist damit man die Variablen richtig ansprechen kann - in dem Sinne addiere Variable 1 bis 9.
Das sage ich ja wohlgemerkt als einer der eben Javascript nicht kann.