Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Javascript und Checkbox auswerten (https://www.delphipraxis.net/34084-javascript-und-checkbox-auswerten.html)

crazynet24 17. Nov 2004 09:38


Javascript und Checkbox auswerten
 
Moin moin,

ich möchte im Browser Checkboxen auswerten, die mit PHP dynamisch generiert werden.
In der Seite werden Warenbestände angezeigt, die z.B. Gewichte enthalten, und wenn der Kunde im Browser seine Häckchen in die Checkboxen (der Waren) setzt, sollen die Gewichte dieser Zeilen aufaddiert werden. Dazu muss ich jede Checkbox identifizieren, um das zugehörige Gewicht zu bekommen.
Ich dachte mir, für diesen Zweck für jede Checkbox ihren Namen (box1, box2...) an die Funktion (checkboxen(f)) zu übergeben, die dann weitere Schritte einleitet. Leider lässt sich der Checkboxenname nicht so einfach übergeben, der Parameter f wird falsch ausgewertet und führt in der Zeile "if (document.forms[0].f.checked)" zum Fehler. Kann mir jemand sagen wie ich die Referenz richtig übergeben kann? Gruss Peter

Code:
echo "<script type=\"text/javascript\">
<!--
 function checkboxen(f){
    if (document.forms[0].f.checked)
              {alert(\"angekreuzt!\");}
    else {alert(\"nichts angekreuzt\");}
 }
//-->
</script>";

.
.
.

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"checkbox\" name=\"box1\" onClick=checkboxen('box1')>
";
echo "<input type=\"checkbox\" name=\"box2\" onClick=checkboxen('box2')>
";
echo "<input type=\"checkbox\" name=\"box3\" onClick=checkboxen('box3')>
";
echo "</form>";
[edit=sakura] CODE Tags Mfg, sakura[/edit]

jim_raynor 17. Nov 2004 09:43

Re: Javascript und Checkbox auswerten
 
Mach aus dem 'box1', 'box2' ... jeweils this ohne hochkomma.

In deiner Prozedur brauchst du dann nur noch f.checked.

P.S: So in der Art sollte es klappen. Bin Leider nicht der Große JavaScript spezialist. Alternativ kannst du jeder Checkbox auch eine Id geben und dann per GetElementFromID oder so ähnlich (Schau mal bei SelfHTML wie es wirklich heisst) die Checkbox ermitteln.

crazynet24 17. Nov 2004 10:00

Re: Javascript und Checkbox auswerten
 
Danke erstmal, hat auf Anhieb prima funktioniert!

Danke auf für den Tip mit der ID, die benötige ich wohl auch, um die ArtikelNr zu übergeben, auf Basis dieser soll ja auch addiert werden.

thx und Gruss
Peter

himitsu 17. Nov 2004 10:05

Re: Javascript und Checkbox auswerten
 
entwder
Code:
echo "<script type=\"text/javascript\">
<!--
function checkboxen(f){
if (f.checked) {alert(\"angekreuzt!\");}
else {alert(\"nichts angekreuzt\");}
}
//-->
</script>";

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"checkbox\" name=\"box1\" onClick=\"checkboxen(document.forms[0].box1)\">
";
echo "<input type=\"checkbox\" name=\"box2\" onClick=\"checkboxen(document.forms[0].box2)"\>
";
echo "<input type=\"checkbox\" name=\"box3\" onClick=\"checkboxen(document.forms[0].box3)"\>
";
echo "</form>";
oder nur (wobei das wohl 's Beste ist ^^)
Code:
echo "<script type=\"text/javascript\">
<!--
function checkboxen(f){
if (f.checked) {alert(\"angekreuzt!\");}
else {alert(\"nichts angekreuzt\");}
}
//-->
</script>";

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"checkbox\" name=\"box1\" onClick=\"checkboxen(this)\">
";
echo "<input type=\"checkbox\" name=\"box2\" onClick=\"checkboxen(this)\">
";
echo "<input type=\"checkbox\" name=\"box3\" onClick=\"checkboxen(this)\">
";
echo "</form>";
oder
Code:
echo "<script type=\"text/javascript\">
<!--
function checkboxen(f){
if (document.getElementsByName(f)[0].checked) {alert(\"angekreuzt!\");}
else {alert(\"nichts angekreuzt\");}
}
//-->
</script>";

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"checkbox\" name=\"box1\" onClick=\"checkboxen('box1')\">
";
echo "<input type=\"checkbox\" name=\"box2\" onClick=\"checkboxen('box2')\">
";
echo "<input type=\"checkbox\" name=\"box3\" onClick=\"checkboxen('box3')\">
";
echo "</form>";
(wobei das sogar fast genauso bei selfhtml drinsteht > JavaScript > getElementsByName())

oder
Code:
echo "<script type=\"text/javascript\">
<!--
function checkboxen(f){
if (document.getElementById(f).checked) {alert(\"angekreuzt!\");}
else {alert(\"nichts angekreuzt\");}
}
//-->
</script>";

echo "<form method=\"post\" action=\"\">";
echo "<input type=\"checkbox\" id=\"box1\" name=\"box1\" onClick=\"checkboxen('box1')\">
";
echo "<input type=\"checkbox\" id=\"box2\" name=\"box2\" onClick=\"checkboxen('box2')\">
";
echo "<input type=\"checkbox\" id=\"box3\" name=\"box3\" onClick=\"checkboxen('box3')\">
";
echo "</form>";


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz