Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Forum | campi attivati dopo click su radiobutton

    salve ho un menu di radiobutton di tre voci.
    ognuna di esse ha 2 o 3 sottovoci selezionabili con un checkbox.
    come posso fare per far attivare i checkbox soltanto dopo che l'utente abbia selezionato il radiobutton gerarchicamente superiore?

    es:
    codice:
    menu:
    
    voce 1 -> radiobutton
             submenu1 -> checkbox
             submenu1 -> checkbox
             submenu1 -> checkbox
    
    voce 2 -> radiobutton
             submenu2 -> checkbox
             submenu2 -> checkbox
    voce 3 -> radiobutton
             submenu3 -> checkbox
             submenu3 -> checkbox
    insomma vorrei evitare(disabilitando) che il mio caro utonto mi selezioni submenu3 senza avere selezionato voce3 e tutti gli altri possibili errori..

  2. #2
    up

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    non si può immaginare come individui questi checkbox nei sottomenù,
    potresti fare in tanti modi e se lo specifichi ti posto un esempio + adatto al caso

    se per esempio avessero tutti nome uguale potresti fare così
    codice:
    <script type="text/javascript" language="JavaScript">
    <!--
    function abilita_disabilita(ck){
    	var el=document.menu.elements['sub'+ck.name]
    	for (var n=0;n<el.length;n++){
    		el[n].disabled=!ck.checked;
    		// if(!ck.checked) el[n].checked=false;
    	}
    
    }
    //-->
    </script>
    <form name="menu">
    <input type="checkbox" name="ck0" onclick="abilita_disabilita(this)" />menu0
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu0
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu1
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu2
    
    <input type="checkbox" name="ck1" onclick="abilita_disabilita(this)" />menu1
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu0
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu1
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu2
    
    </form>
    la riga commentata fa tornare i submenù segnati non segnati nel caso il menù corrispondente venga riportato allo stato di non segnato
    (non dovrebbe servirti perchè i campi disabilitati non passano all' invio, cmq...)

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    rileggendo, hai radio e non checkbox, altro esempio
    codice:
    <script type="text/javascript" language="JavaScript">
    <!--
    function abilita_disabilita(which){
    	var els=document.menu.elements
    	for (var n=0;n<els.length;n++){
    		if(els[n].type=='checkbox' && els[n].name.indexOf('sub')>-1){
    			var theGroup=(els[n].name==which)?1:0;
    			els[n].disabled=(theGroup)?0:1;
    			if(!theGroup) els[n].checked=false;
    		}
    	}
    }
    //-->
    </script>
    <form name="menu">
    <input type="radio" name="rd" onclick="abilita_disabilita('subck0')" />menu0
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu0
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu1
    
    - <input type="checkbox" name="subck0" disabled="disabled" />submenu2
    
    <input type="radio" name="rd" onclick="abilita_disabilita('subck1')" />menu1
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu0
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu1
    
    - <input type="checkbox" name="subck1" disabled="disabled" />submenu2
    
    </form>
    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.