• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Wie ist die richtige Syntax?

Steffen Böhme

New member
Hallo Leute!

Wie kann ich es machen, das in der Schleife s1 bis s13
abgefragt werden, ohne das ich 13 Zeilen schreiben muß.

function pruefband()
{var tr=0;
for(tr=1;tr<14;tr++)
{
if(document.t.s1.checked=true) {documents.t.s1.checked=false; }
}
}

Danke!
 
Probiers mal so.....

Hi!

Versuch mal das hier......ohne Garantie, daß es funzt......

function pruefband()
{var tr=0;
for(tr=1;tr<14;tr++)
{
var pruef="document.t."+tr+".checked";
if(pruef=true) {pruef=false;}
}
}


Wie gesagt....keine Grantie.....hab nicht geteste, aber probiers einfach mal!

CU
Redpadz
 
if(pruef==true)
{
...
}

Wenn, dann muss man es so machen, aber bei mir gings trotzdem ned. Vielleicht findet noch jemand nen Fehler.
 
Umkehrung probieren

Hi!

Kannst Du nicht einfach die Abfrage mal umkehren....

if(pruef!=false) und so weiter.....

Außerdem bau zu Testzwecken mal ein Alert ein, um Dir die einzelnen Werte mal ausgeben zu lassen. Um zu sehen, was da eigentlich übergeben wird....

CU
Redpadz
 
Schön zu wissen...

.. das dies doch nicht so einfach ist.
Beim Programmieren baue ich mir imer alertboxen ein, damit ich weiß,
bis wohin das Script funzt. Ich muß ehrlich sagen, das ich darüber schon
einige Stunden gesessen habe bevor ich hier den Thread aufgemacht habe.
Wenn man ein Document mit writeln schreibt,
klappt es mit ....t.c' + tr +'.value.... usw. einwandfrei.

Aber vielleicht kennt ja einer doch die Lösung. Ansonsten muß ich eben die
Schreibfaulheit besiegen und mehrer zeilen schreiben.
 
<html>
<head>
<title>test</title>
</head>
<script>
function check()
{
for(i = 1; i < 4; i++)
{
var box = "document.form."+i+".checked";
if(box==true)
{
alert('Checkbox '+i+' ausgewählt');
}
else
{
alert('Checkbox '+i+' nicht ausgewählt');
}
}
}
</script>
<body>
<form name="form" onsubmit="check()">
1: <input type="checkbox" name="1">
<br>
2: <input type="checkbox" name="2">
<br>
3: <input type="checkbox" name="3">
<br>
<input type="submit" value="Check">
</form>
</body>
</html>

So schauts bei mir bis jetzt aus. Und als Meldung kommt immer nicht ausgewählt, irgendwo ist da ein Fehler bei der IF-Schleife.
 
Danke ShadowsMaster!

box ist immer true das ist das Problem.

Wahrscheinlich ist diese Zeile nicht richtig, obwohl sie in der Alertbox richtig aussieht.

var box = "document.form."+i+".checked";
 
Die einzelnen checkboxen kann man mit einem array ansprechen.


function pruefband() {
var tr=0;
for(tr=0;tr<13;tr++)
{
if(document.t.s1[tr].checked) {document.t.s1[tr].checked=false; }
}
}
 
Der Gedanke ist nicht schlecht.
Aber leider kann ich die 13 Checkboxen hinterher nicht ansprechen.

Trotzdem Danke!

Bin immernoch darüber froh, daß es keine billige Frage war.
 
Das script soll also nicht auf der Seite laufen, auf der das Formular ist, sondern erst auf dem nächsten html-Dokument. Und auf dieser nächsten Seite willst du die checkboxen in einer Schleife abfragen.
Ist das so richtig?
 
Weis nicht genau, was du willst.
Bei mir funktionierts.

<head>
<title>pruefband</title>
</head>
<script>
var i;
function pruefband()
{
for(tr = 0; tr < 3; tr++) {
if (document.form.f[tr].checked){
var t=tr+1;
alert ("checkbox "+t+" ist angekreuzt");
}
else{
var t=tr+1;
alert ("checkbox "+t+" ist nicht angekreuzt");
}
}
}
</script>
<body>
<form name="form" onsubmit="pruefband()">
checkbox 1: <input type="checkbox" name="f" value="a">
<br>
checkbox 2: <input type="checkbox" name="f">
<br>
checkbox 3: <input type="checkbox" name="f">
<br>
<input type="submit" value="Check">
</form>
</body>
</html>
 
Es gibt doch noch ein Problem!

Mit dem Script von grunz kann ich zwar abfragen ob die Box angehakt ist oder
nicht aber ich kann den Wert hinterher nicht verändern und auf Value kann ich
auch nicht zugreifen.
Ich habe daweil einen längeren Quelltext geschrieben, da es fertig werden mußte.
Aber es wäre trotzdem interessant zu Wissen, ob dies möglich wäre. Man würde
sich ne Menge Schreibarbeit ersparen

Gruß Steffen
 
Ich habe der Checkbox bei Value eine Artikelnummer hinterlegt.
Also ich mach folgendes:
Ich will, das nur eine Option angehakt werden kann. Also setze ich
beim OnClick erst alle auf False und dann den entsprechenden auf
True. Anschließend muß man noch einen Text eingeben.
Tja und dann wollte ich halt abfragen, welche der Checkboxen true
ist.
 
na wenn

wenn du willst das nur eins angekreuzt werden soll, dann nimm doch n radio button und gib den input tags nen namen

<input type="radio" value="checked" name="radio1">

und frag sie im script ab wo du wiederum jeden einzeln ansprechen mußt und abfragen kannst
...glaub ich, oder hab ich was falsch verstanden ?
 
korektur *grinz*

<input type=radio name="radio" value="wert" checked>
man könnt natürlich versuchen den wert anzusprechen und ihn wieder auszugeben oder so wüßt aber grad nich genau wie man das machen sollt *anfängeris+gg*
 
Zurück
Oben