Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074

    checked che attiva secondo checked

    Per una questione di velocità d'uso, ed al tempo stesso di difesa dagli errori, vorrei risolvere (ma non è fondamentale...) il problema seguente.
    In un form, ho 4 radio button, con lo stesso id e valore diverso:
    Codice PHP:
    <input name="sistemazione1" id="sistemazione1" type="radio" class="checkleft2" value="uno" />
    <
    input name="sistemazione1" id="sistemazione1" type="radio" class="checkleft2" value="due" />
    <
    input name="sistemazione1" id="sistemazione1" type="radio" class="checkleft2" value="tre" />
    <
    input name="sistemazione1" id="sistemazione1" type="radio" class="checkleft2" value="qua" /> 
    Poco più sotto, ne ho altri quattro, denominati come segue:
    Codice PHP:
    <input name="bk_sistemazione1" id="bk_sistemazione1" type="radio" class="checkleft2" value="uno" />
    <
    input name="bk_sistemazione1" id="bk_sistemazione1" type="radio" class="checkleft2" value="due" />
    <
    input name="bk_sistemazione1" id="bk_sistemazione1" type="radio" class="checkleft2" value="tre" />
    <
    input name="bk_sistemazione1" id="bk_sistemazione1" type="radio" class="checkleft2" value="qua" /> 
    L'utente/operatore (siamo all'interno di un sistema di gestione booking), se smarca il primo radio button (valore uno), deve poi smarcare anche il primo della seconda serie.
    Per velocizzare le operazioni, e per evitare errori, vorrei che in base a quale dei primi 4 radio button viene attivato, si attiva il corrispettivo della seconda serie.
    In un primo momento, ho pensato di utilizzare l'evento onChange, aggiungendo ai radio button della prima serie questo codice:
    Codice PHP:
    onchange="if(this.checked=true) { document.getElementById('bk_sistemazione1').checked=true; } else { document.getElementById('bk_sistemazione1').checked=false; }" 
    Però - ovviamente... - indipendentemente da quale dei quattro viene smarcato, nella seconda serie si attiva sempre e comunque il primo.
    Il fatto è che, da un lato, ciascuna serie di radio button deve avere lo stesso id, in modo che l'attivazione di uno disattivi gli altri, ma dall'altro, avendo per necessità lo stesso id non posso distinguerli, al fine di identificare il radio button corrispondente nella seconda serie...
    L'unico modo (credo) sarebbe poter utilizzare il value come identificativo, ma non ho proprio idea di come (e se) si possa fare...
    Suggerimenti?
    metatad
    graphic & web design

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    what!
    Gli devo essere univoci. cosa intendi per smarcare?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    Non ho ben capito cosa intendi per "devo"...
    Io, per smarcare intendo cliccare il radio button, farlo passare allo stato checked ...
    metatad
    graphic & web design

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Per la fretta ho scritto male, intendevo dire che gli ID devono essere univoci
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    eh... ma se gli ID sono unici, non mi funziona più la scelta selettiva... voglio dire, se avrò:
    <radio ID=uno>
    <radio ID=due>
    <radio ID=tre>
    <radio ID=quattro>

    il risultato sarà che posso cliccarli (portarli alla condizione checked) tutti e quattro... così faccio un passo in avanti da una parte, ma due indietro dall'altra... non è quello che mi servirebbe...
    ma forse quello che vorrei io non si può proprio fare...
    metatad
    graphic & web design

  6. #6
    non fare confusione tra ID e NAME...
    prova questo... magari ti aiuta a capire come funziona

    <html>
    <head>
    <script type="text/javascript">
    function check()
    {
    document.getElementById("radio1").checked=true;
    }
    function uncheck()
    {
    document.getElementById("radio2").checked=true;
    }
    </script>
    </head>
    <body>

    <form>
    <input type="radio" id="radio1" name="rd1" />
    <input type="radio" id="radio2" name="rd1" />
    <input type="button" onclick="check()" value="Check radio button 1" />
    <input type="button" onclick="uncheck()" value="Check radio button 2" />
    </form>

    </body>
    </html>

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    Hai perfettamente ragione, avendo l'abitudine di usare name ed id uguali, finisco col confonderne la funzione!
    Grazie 1000!
    metatad
    graphic & web design

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 © 2025 vBulletin Solutions, Inc. All rights reserved.