Mehrere Checkboxen per Link aktivieren
Thomas
- javascript
Hallo,
ich habe auf einer Seite mehrere Zeilen die aus der DB kommen.
Jede Zeile hat eine Checkbox (was aktiviert ist, wird gemeinsam gelöscht!!)
nun möchte ich per Link alle checkboxen aktivieren. Ich habe schon mal gespielt, bin aber nicht wirklich ein JavaScript Freak.
Hat wer eine Idee wie man es für folgende Variante realisieren könnte?
<input type='checkbox' name='delete[]' value='$nummer'>
Danke:
Tom
hi,
Hat wer eine Idee wie man es für folgende Variante realisieren könnte?
<input type='checkbox' name='delete[]' value='$nummer'>
eine schleife über getElementsByName("delete[]") sollte da doch eigentlich schon für ausreichen.
(sinnvoller weise direkt unterhalb des formularobjektes angewendet.)
gruß,
wahsaga
Als fertigen Code ungefähr so (der Name des Formulars "one"
muss natürlich gegen den richtigen ausgetauscht werden):
function activateAllCheckboxes () {
var checkboxes = document.forms["one"].elements["delete[]"];
for (var i=0;i<checkboxes.length;i++) {
checkboxes[i].checked = true;
}
}
Hi mark,
Als fertigen Code ungefähr so
Was sollte das?
Dieses Boa^H^H^H Forum hat hohe Qualität, weil i.d.R. nicht fertiger Code hingerotzt wird, sondern Hilfe zur Selbsthilfe gegeben wird. Denkanstöße, die dem Fragenden das Denken nicht abnehmen, sondern es in die richtige[tm] Richtung lenken.
Gruß,
Gunnar
Hallo Gunnar,
Dieses Boa^H^H^H Forum hat hohe Qualität, weil i.d.R. nicht fertiger Code hingerotzt wird, sondern Hilfe zur Selbsthilfe gegeben wird. Denkanstöße, die dem Fragenden das Denken nicht abnehmen, sondern es in die richtige[tm] Richtung lenken.
Ich habe Marks Code noch nicht getestet. Aber wenn er entscheidet, dass er den fertigen Code schneller hingeschrieben hat, als umständliche Denkanstöße zu geben, dann finde ich das immerhin besser, als wenn er gar nichts schreibt. Überlass ihm die Entscheidung!
Mit mir musst du diesbezüglich auch oft hadern, stimmts?
Gruß Gernot
Hallo Gunnar,
Dieses Boa^H^H^H Forum hat hohe Qualität, weil i.d.R. nicht fertiger Code hingerotzt wird, sondern Hilfe zur Selbsthilfe gegeben wird. Denkanstöße, die dem Fragenden das Denken nicht abnehmen, sondern es in die richtige[tm] Richtung lenken.
Ich habe Marks Code noch nicht getestet. Aber wenn er entscheidet, dass er den fertigen Code schneller hingeschrieben hat, als umständliche Denkanstöße zu geben, dann finde ich das immerhin besser, als wenn er gar nichts schreibt. Überlass ihm die Entscheidung!
Mit mir musst du diesbezüglich auch oft hadern, stimmts?
Gruß Gernot
ich danke erstmal dass es so schnell ging. ich bin der meinung dass mir persönlich der fertige code erstmal mehr hilft.
ich bin nicht wirklich das javascript ass, und hätte deswegen sowieso nochmal nachfragen müssen!
den grundsatz den user selbst denken zu lassen finde ich aber gut, und vertrete diesen auch! ;)
Danke nochmals: tom
Hi Gernot,
Aber wenn er entscheidet, dass er den fertigen Code schneller hingeschrieben hat, […]
In solchem Fall hab ich auch schon mal fertigen Code hingeschrieben.
[…] als umständliche Denkanstöße zu geben,
Der https://forum.selfhtml.org/?t=109540&m=684527 kam bereits von wahsaga und war IMHO völlig ausreichend.
Mit mir musst du diesbezüglich auch oft hadern, stimmts?
Mit dir hadere ich eher darüber, dass du manchmal Probleme löst, die, wenn man einen anderen (besseren[tm]) Weg geht, gar nicht erst auftauchen.
Gruß,
Gunnar
Der https://forum.selfhtml.org/?t=109540&m=684527 kam
bereits von wahsaga und war IMHO völlig ausreichend.
Naja, die kleine Hürde ist ja, dass "delete[]" als Array behandelt wird
und der Zugriff über elements["delete[]"][i] erfolgt.
你好 Gunnar,
[…] als umständliche Denkanstöße zu geben,
Der https://forum.selfhtml.org/?t=109540&m=684527 kam bereits
von wahsaga und war IMHO völlig ausreichend.
Nichtsdestotrotz solltest du es dem Poster überlassen, ob er Code postet oder
nicht. Weisst schon, Q-23 und so.
再见,
克里斯蒂安
Ich finde die Anleitung zur Selbsthilfe auch lobenswert.
Wobei ich mir folgenden Codeschnipsel nicht verkneifen kann
(Diese Funktion merkt sich die vorher aktivierten Checkboxen):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>checkCheckboxes</title>
<script type="text/javascript">
<!--
[code lang=javascript]
var checkboxesStatus = new Array();
function checkCheckboxes (pObject,pName) {
var checkboxes = document.forms["one"].elements[pName];
if (pObject.checked==true) {
for (var i=0;i<checkboxes.length;i++) {
checkboxesStatus[i] = checkboxes[i].checked;
checkboxes[i].checked = true;
}
} else {
for (var i=0;i<checkboxes.length;i++) {
checkboxes[i].checked = checkboxesStatus[i];
}
}
}
//-->
~~~~~~html
</script>
</head>
<body>
<form name="one" action="" method="post">
<input type="checkbox" name="two" value="" onclick="checkCheckboxes(this,'delete[]');">
<br /><br />
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
<input type="checkbox" name="delete[]" value="">
</form>
</body>
</html>
Ob das nun "hingerotzt" ist das muss Thomas entscheiden.