Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Mehrere Checkboxen aktiven deaktivieren Denkansatz

Frage Entwicklung JavaScript

Mitglied: Maik87

Maik87 (Level 2) - Jetzt verbinden

30.07.2012 um 09:32 Uhr, 4208 Aufrufe, 4 Kommentare

Hallo Leute,
ich als JS-Anfänger brauche mal einen Denkansatz.

Ich möchte eine Seite mit vielen Checkboxen anzeigen. Wird nun die oberste Checkbox aktiviert, so sollen alle drunterliegenden ebenfalls aktiviert werden. Andersrum bei Deaktivierung ebenfalls.

Nun sehen meine Checkboxen so aus:
01.
<input type="checkbox" name="OrgID[]" value="0"> 
02.
<input type="checkbox" name="OrgID[]" value="1"> 
03.
<input type="checkbox" name="OrgID[]" value="10"> 
04.
<input type="checkbox" name="OrgID[]" value="11"> 
05.
<input type="checkbox" name="OrgID[]" value="12"> 
06.
<input type="checkbox" name="OrgID[]" value="2"> 
07.
<input type="checkbox" name="OrgID[]" value="20"> 
08.
<input type="checkbox" name="OrgID[]" value="21">
Die mit value=0 soll alle ansprechen, die mit 1 nur die, die mit 1 beginnen usw.

Wie bekomme ich nun die Boxen angesprochen, die alle den gleichen Namen haben? Gibt es sowas wie Value like 1% oder sowas?
Mitglied: godlie
30.07.2012 um 10:21 Uhr
Hi,

ein kleiner Denkanstoß verpass denen halt eine ID, lies dir beim Seitenladen alle IDS mit values in ein Array durchlaufe das array bei passenden IDS attribute setzen.
Bitte warten ..
Mitglied: Maik87
30.07.2012 um 10:33 Uhr
Ähm...
Klingt nicht einfach - aber ich versuche mich mal dran.
Bitte warten ..
Mitglied: colinardo
30.07.2012 um 17:38 Uhr
Hier noch ein Lösungsvorschlag mit jQuery und zusätzlichen Klassen für die Checkboxen:
Die Checkboxen die mehrere untergeordnete mitauswählen sollen versiehst du mit dem Klassennamen "main" und die jeweils untergeordneten mit "sub-x" wobei das "x" mit der ersten Ziffer von value gefüllt werden sollte...
01.
<!doctype html> 
02.
<html> 
03.
<head> 
04.
<meta charset="utf-8"> 
05.
<title>Checkbox</title> 
06.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
07.
<script type="text/javascript"> 
08.
$(document).ready(function(){ 
09.
	$(':checkbox[name="OrgID\\[\\]"].main').change(function(){ 
10.
		var val = $(this).attr("value"); 
11.
	 
12.
			//die 0 für die Auswahl aller Elemente abfangen  
13.
			if (val !== "0"){ 
14.
				if ($(this).attr("checked")){ 
15.
					$('.sub-' + val).attr("checked","checked"); 
16.
				}else{ 
17.
					$('.sub-' + val).removeAttr("checked"); 
18.
19.
			}else{	//für die Auswahl aller Elemente 
20.
				if ($(this).attr("checked")){ 
21.
					$(':checkbox[name="OrgID\\[\\]"]:gt(0)').attr("checked","checked"); 
22.
				}else{ 
23.
					$(':checkbox[name="OrgID\\[\\]"]:gt(0)').removeAttr("checked");					 
24.
25.
26.
	}); 
27.
}); 
28.
</script> 
29.
</head> 
30.
 
31.
<body> 
32.
<input type="checkbox"  class="main" name="OrgID[]" value="0"> 
33.
0<br> 
34.
<input type="checkbox" class="main" name="OrgID[]" value="1"> 
35.
1<br> 
36.
<input type="checkbox" class="sub-1" name="OrgID[]" value="10"> 
37.
10<br> 
38.
<input type="checkbox" class="sub-1" name="OrgID[]" value="11"> 
39.
11<br> 
40.
<input type="checkbox" class="sub-1" name="OrgID[]" value="12"> 
41.
12<br> 
42.
<input type="checkbox" class="main" name="OrgID[]" value="2"> 
43.
44.
<br> 
45.
<input type="checkbox" class="sub-2" name="OrgID[]" value="20"> 
46.
20 
47.
<br> 
48.
<input type="checkbox" class="sub-2" name="OrgID[]" value="21">  
49.
21 
50.
</body> 
51.
</html>
Hoffe das hilft dir..
Uwe
Bitte warten ..
Mitglied: Maik87
02.08.2012 um 17:23 Uhr
Klingt auch sehr interessant...
Leider hab ich mein Beispiel nur oberflächlich beschrieben und nicht detailliert.

Ich habe mehr als zwei Ebenen. Genau genommen sechs. Um dein Beispiel umzuswitchen bin ich scheinbar zu blöd Ich möchte jetzt auch nicht eure Freizeit in Anspruch nehmen und mir das von euch fertig machen lassen. Daher muss ich mir wohl eine andere Lösung ausdenken. JavaScript ist wohl derzeit noch nicht genug vertieft bei mir.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
LAN, WAN, Wireless
Mehrere Hardware Firewalls (10)

Frage von cerberus90 zum Thema LAN, WAN, Wireless ...

VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

VB for Applications
gelöst Mehrere Charts per VBA erstellen lassen, Titel wird nicht angezeigt

Frage von Aximand zum Thema VB for Applications ...

Batch & Shell
Mehrere.csv Dateien zusammenfügen zu einer Datei mit bat (4)

Frage von Piotrney zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...