Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 38
  1. #11
    mi stai facendo davvero un regalo di natale...

    ho un primo problema, che ti sembrerà idiota ma... come diavolo si fa il carattere dell'OR???

    secondo problema:
    check1gruppo1
    check2gruppo1
    check3gruppo1
    check1gruppo2
    check2gruppo2
    check3gruppo2
    dove va messo? va scritto così prima dell'array o devo aggiungerlo da qualche altra parte?

    grazie della pazienza...

    _YD

    P.S. abbiamo proprio orari incompatibili, eh? tu posti sempre prima delle nove, io vado a dormire poche ore prima e non mi sveglio mai prima di adesso...

  2. #12
    Si' abbiamo proprio orari incompatibili... diciamo che per motivi tecnici (maledetta universita'!) mi alzo tutte le mattine alle 5:50, compreso il fine settimana o in vacanza perche' oramai l'orario della sveglia e' quello, e allora ne approfitto per navigare presto!
    Ma veniamo alle cose serie:

    1) L'OR si fa con shift e \ (Primo carattere in alto a sinistra della tastiera, sotto l'esc). Puo' darsi che il disegno sulla tastiera sia quello di due linee verticali separate, ma il risultato e' che a video se ne vede solo una (questa | appunto).

    2) Questa roba qui:
    check1gruppo1
    check2gruppo1
    check3gruppo1
    check1gruppo2
    check2gruppo2
    check3gruppo2

    era solo per fare un esempio schematico. In realta' devi mettere il codice HTML per creare un checkbox per ognuno di essi (oppure per tutti quelli che servono a te.). Naturalmente va ritoccato il codice dell' onClick per fargli assegnare il valore giusto all'elemento dell'array. A proposito... ripensandoci basta anche un solo array, cosi' non si deve modificare troppo il codice dello script precedente.
    Ovvero continui ad aggiungere delle voci all'array dei true/false, associandoli con i checkbox che crei di volta in volta.
    Successivamente quando fai il test per abilitare il bottone, raggruppi dentro delle parentesi i vari GRUPPI di checkbox, separati dagli AND &&, e dentro a queste parentesi ci metti le condizioni per ogni singolo checkbox del gruppo, separati dagli OR ||.
    Questa era la teoria, perche' tanto avere uno script buttato la' senza spiegazioni non serve a nulla. Ora la pratica, con il nuovo script:

    <html>
    <body>

    <input type="checkbox" name="ck1" value="check1" onclick="segna(0);contr();">Checkbox 1 - Gruppo 1

    <input type="checkbox" name="ck2" value="check2" onclick="segna(1);contr();">Checkbox 2 - Gruppo 1

    <input type="checkbox" name="ck3" value="check3" onclick="segna(2);contr();">Checkbox 3 - Gruppo 1




    <input type="checkbox" name="ck1" value="check1" onclick="segna(3);contr();">Checkbox 1 - Gruppo 2

    <input type="checkbox" name="ck2" value="check2" onclick="segna(4);contr();">Checkbox 2 - Gruppo 2

    <input type="checkbox" name="ck3" value="check3" onclick="segna(5);contr();">Checkbox 3 - Gruppo 2

    <div id="bottone">
    <input type="button" name="bott" value="clicca" DISABLED>
    </div>
    <script language="javascript">

    var arrValori = new Array(false, false, false, false, false, false);

    function segna(quale)
    {
    arrValori[quale] = !arrValori[quale];
    }

    var i=0;

    function contr()
    {
    if( ((arrValori[0]==true)||(arrValori[1]==true)||(arrValori[2]==true)) && ((arrValori[3]==true)||(arrValori[4]==true)||(arrValori[5]==true)))
    {
    bottone.innerHTML="<input type='button' name='bott' value='clicca'>";
    }
    else
    {
    bottone.innerHTML="<input type='button' name='bott' value='clicca' DISABLED>";
    }
    }
    </script>

    </body>
    </html>

    Prova a salvarlo e a vederlo con il browser: ci sono 2 gruppi di checkbox, e basta fare click su una voce qualsiasi del primo gruppo e una qualsiasi del secondo gruppo e il bottone viene abilitato.
    Ora basta cambiare la parte delle condizioni dell'if con i riferimenti ai tuoi checkbox e il tutto dovrebbe funzionare alla perfezione.
    Per imparare bisogna divertirsi, quindi...
    Buon divertimento!!!

    The Shiny Side Of the Moon
    Un piccolo villaggio di bit sperduto nell'immenso far-web.

  3. #13
    Assolutamente strepitoso... non posso davvero far altro che ringraziarti... funziona perfettamente, ed è esattamente quello che mi serviva...

    Grazie davvero

    _YD

  4. #14
    Come sempre, ho cantato vittoria troppo presto...

    ho un problema che credo sia dovuto alla presenza di un altro script: è quello che seleziona tutte le checkboxes di uno dei tre gruppi. ti spiego quello che succede: se io seleziono "manualmente" una o più caselle dei tre gruppi (anche tutte e 18, ma spuntandole una ad una), il tuo script funziona alla perfezione. se invece seleziono le caselle tramite il pulsante "seleziona tutto", il tuo script smette di funzionare... il pulsante "submit" resta disabled, e torna a funzionare soltanto togliendo il segno di spunta da qualche casella a caso in ognuno dei tre gruppi. se però poi torno a selezionare quella stessa casella che ho deselezionato, il pulsante torna nuovamente in fase "disabled".

    non so se la cosa è risolvibile, io ti posto il codice della mia pagina, se hai tempo/modo/voglia (soprattutto quest'ultima!) di verificarmi il malfunzionamento te ne sarò grato.

    ecco di seguito il listato (un po' semplificato rispetto all'originale, ma spero di non omettere nulla di significativo) del mio codice:

    <script language="JavaScript">
    <!--
    function PSelAll() {
    var f = document.residenziali_vendita;
    if ((f.monolocale.checked == 0) && (f.bilocale.checked == 0) && (f.trilocale.checked == 0) && (f.quadrilocale.checked == 0) && (f.villa.checked == 0)){
    ((f.monolocale.checked =1) && (f.bilocale.checked =1) && (f.trilocale.checked =1) && (f.quadrilocale.checked = 1) && (f.villa.checked = 1));
    }else{
    ((f.monolocale.checked =0) || (f.bilocale.checked =0)|| (f.trilocale.checked =0) || (f.quadrilocale.checked = 0) || (f.villa.checked = 0));
    }
    }
    //-->
    <!--
    function SSelAll() {
    var f = document.residenziali_vendita;
    if ((f.como1.checked == 0) && (f.como2.checked == 0) && (f.como3.checked == 0) && (f.olgiate.checked == 0) && (f.lago.checked == 0) && (f.cantu.checked == 0) && (f.diverse.checked == 0)){
    ((f.como1.checked =1) && (f.como2.checked =1) && (f.como3.checked =1) && (f.olgiate.checked = 1) && (f.lago.checked = 1) && (f.cantu.checked = 1) && (f.diverse.checked = 1));
    }else{
    ((f.como1.checked =0) || (f.como2.checked =0)|| (f.como3.checked =0) || (f.olgiate.checked = 0) || (f.lago.checked = 0) || (f.cantu.checked = 0) || (f.diverse.checked = 0));
    }
    }
    //-->
    <!--
    function TSelAll() {
    var f = document.residenziali_vendita;
    if ((f.uno.checked == 0) && (f.due.checked == 0) && (f.tre.checked == 0) && (f.quattro.checked == 0) && (f.cinque.checked == 0) && (f.sei.checked == 0)){
    ((f.uno.checked =1) && (f.due.checked =1) && (f.tre.checked =1) && (f.quattro.checked = 1) && (f.cinque.checked = 1) && (f.sei.checked = 1));
    }else{
    ((f.uno.checked =0) || (f.due.checked =0)|| (f.tre.checked =0) || (f.quattro.checked = 0) || (f.cinque.checked = 0) || (f.sei.checked = 0));
    }
    }
    //-->
    </script>
    <script language="javascript">
    var arrValori = new Array(false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false);
    function segna(quale)
    {
    arrValori[quale] = !arrValori[quale];
    }
    var i=0;
    function contr()
    {
    if( ((arrValori[0]==true)||(arrValori[1]==true)||(arrValori[2]==true)||(arrValori[3]==true)||(arrValori[4]==true)) && ((arrValori[5]==true)||(arrValori[6]==true)||(arrValori[7]==true)||(arrValori[8]==true)||(arrValori[9]==true)||(arrValori[10]==true)||(arrValori[11]==true)) && ((arrValori[12]==true)||(arrValori[13]==true)||(arrValori[14]==true)||(arrValori[15]==true)||(arrValori[16]==true)||(arrValori[17]==true)||(arrValori[18]==true)))
    {
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca'>";
    }
    else
    {
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca' DISABLED>";
    }
    }
    </script>

    <form name="residenziali_vendita" method="post" action="1search_res_ven.php">
    primo gruppo
    <input type="checkbox" name="monolocale" value="monolocale" onclick="segna(0);contr();">monolocale
    <input type="checkbox" name="bilocale" value="bilocale" onclick="segna(1);contr();">bilocale
    <input type="checkbox" name="trilocale" value="trilocale" onclick="segna(2);contr();">trilocale
    <input type="checkbox" name="quadrilocale" value="quadrilocale" onclick="segna(3);contr();">quadrilocale
    <input type="checkbox" name="villa" value="villa" onclick="segna(4);contr();">villa

    [img]SelAll().gif[/img]

    secondo gruppo
    <input type="checkbox" name="como1" value="1" onclick="segna(5);contr();">como centro
    <input type="checkbox" name="como2" value="2" onclick="segna(6);contr();">como periferia
    <input type="checkbox" name="como3" value="3" onclick="segna(7);contr();">como cintura urbana
    <input type="checkbox" name="olgiate" value="4" onclick="segna(8);contr();">olgiate
    <input type="checkbox" name="lago" value="5" onclick="segna(9);contr();">lago
    <input type="checkbox" name="cantu" value="6" onclick="segna(10);contr();">cantù
    <input type="checkbox" name="diverse" value="7" onclick="segna(11);contr();">zone diverse

    [img]SelAll().gif[/img]

    terzo gruppo
    <input type="checkbox" name="uno" value="1" onclick="segna(12);contr();">da x a y soldi
    <input type="checkbox" name="due" value="2" onclick="segna(13);contr();">da y a z soldi
    <input type="checkbox" name="tre" value="3" onclick="segna(14);contr();">da z a w soldi
    <input type="checkbox" name="quattro" value="4" onclick="segna(15);contr();">da w a b soldi
    <input type="checkbox" name="cinque" value="5" onclick="segna(16);contr();">da b a n soldi
    <input type="checkbox" name="sei" value="6" onclick="segna(17);contr();">da n a v soldi
    <input type="checkbox" name="sette" value="7" onclick="segna(18);contr();">oltre v soldi

    [img]SelAll().gif[/img]


    <div id="bottone"><input type="submit" name="Submit" value="Avvia la ricerca" DISABLED></div>
    </form>
    </body>
    </html>

    a presto (intendo tu che ti alzi presto...)

    _YD

  5. #15

    Ecco il regalo!!!

    <html>

    <script language="JavaScript">

    <!--
    function SelezionaTutto(NomeForm,NomeElemento, action) {


    for(var i=0; i<document.forms[NomeForm].elements(NomeElemento).length;i++){
    if (action == "seleziona")
    document.forms[NomeForm].elements(NomeElemento)[i].checked=1
    else
    document.forms[NomeForm].elements(NomeElemento)[i].checked=0
    }
    }
    //-->


    </script>
    <script language="javascript">
    <!--
    function contr(NomeForm)
    {
    var trovatoPrimo=false;
    var trovatoSecondo=false;
    var trovatoTerzo=false;

    for(var i=0; i<=4; i++)
    {
    //alert(i+' '+document.forms[NomeForm].elements[i].value)
    if (document.forms[NomeForm].elements[i].checked) trovatoPrimo=true;
    }

    for(var i=5; i<=11; i++)
    {
    //alert(i+' '+document.forms[NomeForm].elements[i].value)
    if (document.forms[NomeForm].elements[i].checked) trovatoSecondo=true;
    }

    for(var i=12; i<=18; i++)
    {
    //alert(i+' '+document.forms[NomeForm].elements[i].value)
    if (document.forms[NomeForm].elements[i].checked) trovatoTerzo=true;
    }




    if(trovatoPrimo && trovatoSecondo && trovatoTerzo)
    {
    //alert("Attiva");
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca'>";
    }
    else
    {
    //alert("Disattiva");
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca' DISABLED>";
    }
    }
    //-->
    </script>

    <form name="residenziali_vendita" method="post" action="1search_res_ven.php">
    primo gruppo
    <input type="checkbox" name="primo" value="monolocale" onclick="contr('residenziali_vendita');">monolocal e
    <input type="checkbox" name="primo" value="bilocale" onclick="contr('residenziali_vendita');">bilocale
    <input type="checkbox" name="primo" value="trilocale" onclick="contr('residenziali_vendita');">trilocale
    <input type="checkbox" name="primo" value="quadrilocale" onclick="contr('residenziali_vendita');">quadriloc ale
    <input type="checkbox" name="primo" value="villa" onclick="contr('residenziali_vendita');">villa

    [img]SelAll().gif[/img]
    [img]SelAll().gif[/img]


    secondo gruppo
    <input type="checkbox" name="secondo" value="1" onclick="contr('residenziali_vendita');">como centro
    <input type="checkbox" name="secondo" value="2" onclick="contr('residenziali_vendita');">como periferia
    <input type="checkbox" name="secondo" value="3" onclick="contr('residenziali_vendita');">como cintura urbana
    <input type="checkbox" name="secondo" value="4" onclick="contr('residenziali_vendita');">olgiate
    <input type="checkbox" name="secondo" value="5" onclick="contr('residenziali_vendita');">lago
    <input type="checkbox" name="secondo" value="6" onclick="contr('residenziali_vendita');">cantù
    <input type="checkbox" name="secondo" value="7" onclick="contr('residenziali_vendita');">zone diverse

    [img]SelAll().gif[/img]
    [img]SelAll().gif[/img]


    terzo gruppo
    <input type="checkbox" name="terzo" value="1" onclick="contr('residenziali_vendita');">da x a y soldi
    <input type="checkbox" name="terzo" value="2" onclick="contr('residenziali_vendita');">da y a z soldi
    <input type="checkbox" name="terzo" value="3" onclick="contr('residenziali_vendita');">da z a w soldi
    <input type="checkbox" name="terzo" value="4" onclick="contr('residenziali_vendita');">da w a b soldi
    <input type="checkbox" name="terzo" value="5" onclick="contr('residenziali_vendita');">da b a n soldi
    <input type="checkbox" name="terzo" value="6" onclick="contr('residenziali_vendita');">da n a v soldi
    <input type="checkbox" name="terzo" value="7" onclick="contr('residenziali_vendita');">oltre v soldi

    [img]SelAll().gif[/img]
    [img]SelAll().gif[/img]



    <div id="bottone"><input type="submit" name="Submit" value="Avvia la ricerca" DISABLED></div>
    </form>
    </body>
    </html>

  6. #16
    ti sei perso un pezzo di discussione, ho paura...

    infatti come ho già scritto, non posso assegnare lo stesso nome a tutte le checkboxes di un gruppo, xchè i valori che vengono passati col form mi servono come variabili di php...

    ti ringrazio del tentativo, in ogni caso...

    _YD

  7. #17
    Sorry, ho visto solo ora i nuovi post, per Natale non ero a casa (=> niente pc).
    Appena scollego guardo di risolvere il tutto (penso sia abbastanza facile, spero ) e tra stasera e domattina ti mando il codice nuovo.
    Per imparare bisogna divertirsi, quindi...
    Buon divertimento!!!

    The Shiny Side Of the Moon
    Un piccolo villaggio di bit sperduto nell'immenso far-web.

  8. #18

    Così va??

    <html>

    <script language="JavaScript">
    <!--
    function PSelAll() {
    var f = document.residenziali_vendita;
    if ((f.monolocale.checked == 0) && (f.bilocale.checked == 0) && (f.trilocale.checked == 0) && (f.quadrilocale.checked == 0) && (f.villa.checked == 0)){
    ((f.monolocale.checked =1) && (f.bilocale.checked =1) && (f.trilocale.checked =1) && (f.quadrilocale.checked = 1) && (f.villa.checked = 1));
    }else{
    ((f.monolocale.checked =0) || (f.bilocale.checked =0)|| (f.trilocale.checked =0) || (f.quadrilocale.checked = 0) || (f.villa.checked = 0));
    }
    }
    //-->
    <!--
    function SSelAll() {
    var f = document.residenziali_vendita;
    if ((f.como1.checked == 0) && (f.como2.checked == 0) && (f.como3.checked == 0) && (f.olgiate.checked == 0) && (f.lago.checked == 0) && (f.cantu.checked == 0) && (f.diverse.checked == 0)){
    ((f.como1.checked =1) && (f.como2.checked =1) && (f.como3.checked =1) && (f.olgiate.checked = 1) && (f.lago.checked = 1) && (f.cantu.checked = 1) && (f.diverse.checked = 1));
    }else{
    ((f.como1.checked =0) || (f.como2.checked =0)|| (f.como3.checked =0) || (f.olgiate.checked = 0) || (f.lago.checked = 0) || (f.cantu.checked = 0) || (f.diverse.checked = 0));
    }
    }
    //-->
    <!--
    function TSelAll() {
    var f = document.residenziali_vendita;
    if ((f.uno.checked == 0) && (f.due.checked == 0) && (f.tre.checked == 0) && (f.quattro.checked == 0) && (f.cinque.checked == 0) && (f.sei.checked == 0)){
    ((f.uno.checked =1) && (f.due.checked =1) && (f.tre.checked =1) && (f.quattro.checked = 1) && (f.cinque.checked = 1) && (f.sei.checked = 1));
    }else{
    ((f.uno.checked =0) || (f.due.checked =0)|| (f.tre.checked =0) || (f.quattro.checked = 0) || (f.cinque.checked = 0) || (f.sei.checked = 0));
    }
    }
    //-->
    </script>
    <script language="javascript">
    var arrValori = new Array(false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false);
    function segna(quale)
    {
    arrValori[quale] = !arrValori[quale];
    }
    var i=0;
    function contr()
    {
    if( ((arrValori[0]==true)||(arrValori[1]==true)||(arrValori[2]==true)||(arrValori[3]==true)||(arrValori[4]==true)) && ((arrValori[5]==true)||(arrValori[6]==true)||(arrValori[7]==true)||(arrValori[8]==true)||(arrValori[9]==true)||(arrValori[10]==true)||(arrValori[11]==true)) && ((arrValori[12]==true)||(arrValori[13]==true)||(arrValori[14]==true)||(arrValori[15]==true)||(arrValori[16]==true)||(arrValori[17]==true)||(arrValori[18]==true)))
    {
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca'>";
    }
    else
    {
    bottone.innerHTML="<input type='button' name='bott' value='Avvia la ricerca' DISABLED>";
    }
    }
    </script>

    <form name="residenziali_vendita" method="post" action="1search_res_ven.php">
    primo gruppo
    <input type="checkbox" name="monolocale" value="monolocale" onclick="segna(0);contr();">monolocale
    <input type="checkbox" name="bilocale" value="bilocale" onclick="segna(1);contr();">bilocale
    <input type="checkbox" name="trilocale" value="trilocale" onclick="segna(2);contr();">trilocale
    <input type="checkbox" name="quadrilocale" value="quadrilocale" onclick="segna(3);contr();">quadrilocale
    <input type="checkbox" name="villa" value="villa" onclick="segna(4);contr();">villa

    [img]SelAll().gif[/img]

    secondo gruppo
    <input type="checkbox" name="como1" value="1" onclick="segna(5);contr();">como centro
    <input type="checkbox" name="como2" value="2" onclick="segna(6);contr();">como periferia
    <input type="checkbox" name="como3" value="3" onclick="segna(7);contr();">como cintura urbana
    <input type="checkbox" name="olgiate" value="4" onclick="segna(8);contr();">olgiate
    <input type="checkbox" name="lago" value="5" onclick="segna(9);contr();">lago
    <input type="checkbox" name="cantu" value="6" onclick="segna(10);contr();">cantù
    <input type="checkbox" name="diverse" value="7" onclick="segna(11);contr();">zone diverse

    [img]SelAll().gif[/img]

    terzo gruppo
    <input type="checkbox" name="uno" value="1" onclick="segna(12);contr();">da x a y soldi
    <input type="checkbox" name="due" value="2" onclick="segna(13);contr();">da y a z soldi
    <input type="checkbox" name="tre" value="3" onclick="segna(14);contr();">da z a w soldi
    <input type="checkbox" name="quattro" value="4" onclick="segna(15);contr();">da w a b soldi
    <input type="checkbox" name="cinque" value="5" onclick="segna(16);contr();">da b a n soldi
    <input type="checkbox" name="sei" value="6" onclick="segna(17);contr();">da n a v soldi
    <input type="checkbox" name="sette" value="7" onclick="segna(18);contr();">oltre v soldi

    [img]SelAll().gif[/img]


    <div id="bottone"><input type="submit" name="Submit" value="Avvia la ricerca" DISABLED></div>
    </form>
    </body>

    </html>

  9. #19

    per viewsource

    ho fatto copia e incolla del tuo codice, purtroppo non funziona... tra l'altro, non riesco a vedere dove avresti modificato il codice che ho postato io...

    _YD

  10. #20
    Fai copia e Incolla, ma stai attento a rimettere il primo if della funzione contr tutto su una riga.
    Inoltre nei <a href="javascript: ....."> la parola javascript dev'essere tutta attaccata.

    Prova e fammi sapere.

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