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

    Passaggio valore checkbox con metodo get

    Buongiorno a tutti.
    vi sottopongo il mio problema perche' non trovo soluzione:

    Creo un form:

    codice:
    <form name="myForm" method="get">
      <input name="p" type="password" class="text" id="textPsw" maxchar="20"></td>';
      <input type="button" class="pulsante" value="SBLOCCA" onclick="validateForm()"></td></tr>';
      <input name="ar" type="checkbox" id="checkBox" onclick="check(this)" checked value="on">';
    </form>

    Premetto che i valori in grassetto (gli ultimi della checkbox) sono scritti da una routine php a seconda che la variabile 'ar' sia on oppure off.
    Nel secondo caso il codice php scrive solamente value="off".

    Le due funzioni relative ai due onclick sono:

    codice:
    function validateForm() {
    var psw = document.myForm.p.value;
    window.alert(document.myForm.ar.value); // questo serve solo per debug
    if (psw == "") return;
    document.myForm.action = "la stessa pagina.php";
    document.myForm.submit();
        }
    
    function check(ist) {
    if (!ist.checked){ rStatus = "off";}
    else rStatus = "on";
    url = "la stessa pagina.php?";
    url = url +"&ar="+rStatus;
    location.href = url;
    }


    La seconda funzione ricarica la pagina, modificando il valore della variabile 'ar' nella stringa delle variabili passate (il motivo esula in questo momento dal problema ed e' ininfluente).
    Comunque questa funzione l'ho messa solo per completezza visto che funziona egregiamente.
    La prima invece, dopo aver controllato che il campo input non sia vuoto, ricarica la pagina, aggiungendo all' url le variabili prese dal campo input 'p' e dal campo 'ar' con il metodo get.
    Il tutto funziona bene quando il campo checkbox e' spuntato (quindi 'on') e mi restituisce la pagina ricaricata con i due valori passati correttamente (stessa pagina?p=xxx&ar=on) se invece il campo checkbox non e' spuntato (quindi 'off') la pagina si ricarica passando il solo valore 'p' (stessa pagina?p=xxx) e non vi e' traccia del valore 'ar'.

    La cosa apparentemente non ha senso ed io mi sto scervellando da qualche giorno per capire come sia possibile.

    Considerate che la funzione validateForm() nella seconda riga mi legge il valore di 'ar' nel form al solo scopo di debug e mi dice chiaramente che il suo valore e' off, un attimo prima di submittere (perdonatemi il latinismo ) il form.

    Qualcuno puo' aiutarmi?

    Grazie.
    Francy

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Sempre che abbia capito, è normale i campi spunta (combo box) passano il valore solo spuntati usa i campi radio
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.