Archivlink: javarea.de Forum > JavaScript > Checkbox/radio Auswahllimit in einer Matrix
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Checkbox/radio Auswahllimit in einer Matrix

Pages: [1]

geschrieben von Cstudent am 14.01.2006 - 10:12
Hallo JavaScript Speziallisten,

Wer kennt sich mit Tehma "Checkbox/radio Auswahllimit"?

Ich habe ein kleines Problem von dieser Sorte:

Beschreibung:

Ich habe eine Matrix von Checkboxen, die ungefähr so aussieht:

Spalte1 Spalte2 Spalte3
Zeile1 o x o
Zeile2 x o o
Zeile3 o o x
... ... ... ...

ZeileN o x o

Es sind NUR 3 Spalten und es könnte bel. Anzahl von Zeilen sein. In einer Zeile darf NUR EIN
Checkbox aktiviert zu sein. Die Werte werden zur Zeit in 3 Arrays gespeichert (Spaltenmäßig):

myArrayCols1[],
myArrayCols2[],
myArrayCols3[]

Man kann es natürlich auch Zeilenmäßig machen (Meine Meinung nach ist es mehr Programmieraufwand)

Kann man damit was anfangen?

Ich werde mich für jeden Tip freuen!

Gruß

Valeri Oberdoerfer


geschrieben von René am 14.01.2006 - 11:32
Wenn du pro Zeile bei den Namen der Radiobuttons den gleichen verwendest dann kann man auch nur eine pro Zeile auswählen.

HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
<input name="r1" type="radio" value="">
<input name="r1" type="radio" value="">
<input name="r1" type="radio" value="">

<br>

<input name="r2" type="radio" value="">
<input name="r2" type="radio" value="">
<input name="r2" type="radio" value="">


Ansprechen kannst du die dann mit:

HTML-Quelltext
1: 
document.forms[...].elements['r1' oder 'r2' oder ...][0 oder 1 oder 2].value

geschrieben von Cstudent am 14.01.2006 - 18:24
So sieht meine Code aus:

PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 

<?
for($zeile 0$zeile $maxanz$zeile++)
{
     echo 
"<TR><TD><input type=\"checkbox\" name=\"check_1[]\" ></TD>\n";
     echo 
" <TD><input type=\"checkbox\" name=\"check_2[]\"></TD>\n";
     echo 
"<TD><input type=\"checkbox\" name=\"check_3[]\" ></TD></TR><\n";
}
?>



Wie ich schon gepostet habe: es darf nur eine (in einer Zeile) eingeklickt zu sein.

Zitat
 
Wenn du pro Zeile bei den Namen der Radiobuttons den gleichen verwendest dann kann man auch nur eine pro Zeile auswählen.


check_1[] soll 1 ensprechen
check_2[] - 2 und
check_3[] - 3 alles wohlgemerkt in einer Zeile

Bei Auswertung kann man dann feststellen, ob in Zeile "1" einer 1, 2 oder 3 eingeklickt war!
Wenn ich die aber zeilenmäßig speichere, wie kann ich es feststellen, ob es sich um einer 1, 2, oder 3 handelt???

Gruß
Valeri

geschrieben von René am 14.01.2006 - 18:56
PHP-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 

<?php

for ($zeile 0$zeile $maxanz$zeile++)
{
    echo 
'<tr>' "\r\n"
       
'  <td><input name="check_' $zeile '" type="checkbox" /></td>' "\r\n"
       
'  <td><input name="check_' $zeile '" type="checkbox" /></td>' "\r\n"
       
'  <td><input name="check_' $zeile '" type="checkbox" /></td>' "\r\n"
       
'</tr>' "\r\n";
}

?>


geschrieben von Cstudent am 14.01.2006 - 22:12
Hallo René,

das ist mir klar!
Aber wie finde ich raus, ob es sich um ersten, zweiten oder dritten checkbox handelt?

Zitat
 
Wenn ich die aber zeilenmäßig speichere, wie kann ich es feststellen, ob es sich um einer 1, 2, oder 3 handelt???


Das ist für mich sehr wichtig! Nur einer und welche davon!!!!

Gruß
Valeri

geschrieben von René am 15.01.2006 - 09:07
Hallo Valeri,

beim senden des Formulars wird doch nur das value="..." gesendet dessen Checkbox aktiv war. Was willst du den da rausfinden du bekommst nicht alle drei value="..." einer Radiobutton-Zeile sondern eben nur das value="..." welches vom Besucher angeklickt/ausgewählt wurde.

PHP-Quelltext
1: 
2: 
3: 

<?
echo $_POST['check_0'];
?>


geschrieben von Cstudent am 15.01.2006 - 10:49
Sorry,

ich habe einfach blackout gehabt!

Als ich es gepostet habe, wurde mir auf ein mal klar,
wollte ich es rückgängig machen, wußte aber nicht , wie!!!

Ich bitte um verzeihen!!

Noch mal tausend Dank für deine Hilfe.

Guß
Valeri




Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.