online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Marqito vom 12.04.2019, 21:30 Options

Via JavaScript Checkboxen anhacken

Hallo Crackz,
ich bin auf der Suche einer Möglichkeit, wie man mit JavaScript einige meiner Checkboxen auf meiner Site aktivieren kann. Zum Verständnis: Ich habe eine Seite, auf der ein beliebiger Benutzer eine Abfrage mit Checkboxen machen kann. Ich möchte nun einen Knopf erstellen, mit dem man dem Benutzer eine Auswahl vorschlagen kann. Ich müsste dem Knopf mitgeben können, welche Checkboxen er aktivieren soll. Geht das??

Gruss Marqito


Antwort schreiben

Antwort 1 von Supermax vom 12.04.2019, 21:45 Options

Wenn du den auszuwählenden Checkboxen eindeutige ID-Tags übergibst, geht das ganz einfach.

z.B.
<input type="checkbox" id="checkbox1" value="Ja" name="blub">


Im javascript-Code dann

element = document.getElementById('checkbox1');
element.checked = true;


Oder auch als Unterelemente des Formulars anzusprechen.
http://de.selfhtml.org/javascript/objekte/elements.htm



.

Antwort 2 von Marqito vom 12.04.2019, 22:04 Options

Vielen Dank für die Schnelle Antwort. Ich habe es jetzt so gelöst:

Head Bereich:

<script language="JavaScript" type="text/JavaScript">
<!--
function checkboxen() {
document.abfrage.ergaenz.checked = true;
document.abfrage.naturheil.checked = true;
document.abfrage.todesfall.checked = true;
document.abfrage.allgemein.checked = true;
}
//-->
</script>

Das Formular heisst "abfrage" und die Checkboxen heissen "ergaenz", "naturheil", "todesfall" und "allgemein".

Dazu habe ich einen Knopf erstellt (innerhalb des Formulars), um die Funktion beim Draufklicken auszulösen:

<label> Experten
<input type="button" name="Vorschlag" value="Vorschlag" onClick="checkboxen()">
</label>

So funzt es... ;-))

Antwort 3 von rfb vom 13.04.2019, 09:13 Options

kürzer wäre:

<script type="text/javascript">
function checkboxen() {
with (document.abfrage) {
ergaenz.checked = true;
naturheil.checked = true;
todesfall.checked = true;
allgemein.checked = true;
}}
</script>


Das
language
-Attribut im script-Tag ist nicht mehr zulässig, die Kommentarzeichen indessen überflüssig.

Was bei dir fehlt ist eine Funktion, die den Button per JavaScript erzeugt - denn ansonsten wundern sich User ohne JavaScript, warum ihnen die Expertenmeinung vorenthalten bleibt.

Antwort 4 von Marqito vom 13.04.2019, 20:12 Options

Cool, vielen Dank. Wie kann ich denn mit einer Funktion einen Button per JavaScript erzeugen?

Grez Marqito

Antwort 5 von Supermax vom 13.04.2019, 20:30 Options

Einfach an der passenden Stelle mit
document.write();
den entsprechenden HTML-Code ausgeben:

document.write('<input type="button" value="Beschriftung" onClick="..." >');

Antwort 6 von rfb vom 13.04.2019, 23:36 Options

In moderneren Seiten wird das document.write nicht mehr gerne gesehen (Grundgedanke: strenge Trennung von HTML, CSS und JavaScript), aber ein Element nachträglich einfügen lässt sich auch sehr schön mit den Methoden des DOM realisieren.

<script type="text/javascript">
function checkboxen() {
with (document.abfrage) {
ergaenz.checked = true;
naturheil.checked = true;
todesfall.checked = true;
allgemein.checked = true;
}}

function ergaenzebutton() {
var formular=document.abfrage;
var label=document.createElement("label");
label.appendChild(document.createTextNode("   Experten");
var input=document.createElement("input");
input.type="button";
input.name="Vorschlag";
input.value="Vorschlag";
input.onclick=checkboxen;
label.appendChild(input);
formular.appendChild(label);
}

window.onload=function() {
ergaenzebutton();
}
</script>


Nach dem Laden der Seite wird die Funktion ergaenzebutton aufgerufen die den Button (hier mit label) ins erzeugt und ins Formular hängt.

Besser gleich diese Methode angewöhnen, denn document.write hat den entscheidenden Nachteil, dass damit nachträglich (wenn die Seite einmal geladen ist) nichts mehr geändert werden kann, mit den DOM-Methoden ist das hingegen jederzeit möglich.

Ähnliche Themen

Javascript
tomkat  08.07.2007 - 200 Hits - 2 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026