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

    controllo su radio button con stesso nome

    Ho un form che contiene dei radio button, i radio button sono generati in modo dinamico da ASP in base alle taglie del prodotto che ho selezionato... come faccio a controllare all'invio del form che almeno 1 radio sia stato selezionato?

    <form method="post" name="nelCarrello" action=carrello.asp?id=idDelProdotto>

    ....

    <input name="taglia" type="radio" value="<%=(rs_schedaProd.Fields.Item("taglia").Val ue)%>" onClick="javascript:checkDispo('<%=(rs_schedaProd. Fields.Item("dispo").Value)%>');"/>
    ....

    </form>
    dovrei mettere una funzione ONSUBMIT giusto?
    ma che funzione?

    se la taglia è stata selezionata allora posso proseguire con la funziona del form, altrimenti deve fermarsi....
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  2. #2
    codice:
    var inputs = document.getElementsByTagName('input')
    var taglie = new Array()
    var selezionati = false
    
    for (var i = 0; i < inputs.length; i++)
    {
       if ( inputs.item(i).getAttribute('type') == 'radio' && inputs.item(i).getAttribute('name') == 'taglia' )
       {
          taglie.push(inputs.item(i))
       }
    }
    
    for (var i = 0; i < taglie.length; i++)
    {
       if ( taglie[i].selected )
       {
          selezionati = true
          break
       }
    }
    
    if ( selezionati == true )
    {
       // Prosegui
    }
    else
    {
       // Errore
    }

  3. #3
    Veramente io avrei scritto questo:

    function ControllaModulo(modulo){

    var numRadio = document.nelCarrello.taglia.length

    for (i=0;i<numRadio;i++){

    if (document.nelCarrello.taglia[i].checked==true){
    alert ("selezionato")
    break;
    }else{
    alert ("non selezionato")
    }

    }

    }

    COsì fa il controllo e si accoge se almeno 1 è stato selezionato... però sia in un caso che nell'altro il form viene comunque inviato.. io ivece voglio fare in modo che se non trova campi selezionati blocchi l'invio del form.. come devo fare? forse devo usare un confirm?? o no?? boh....
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  4. #4
    Ancora meglio...

    function ControllaModulo(modulo){
    var numRadio = document.nelCarrello.taglia.length
    var selezionato = false;
    for (i=0;i<numRadio;i++){
    if (document.nelCarrello.taglia[i].checked==true){
    var selezionato = true;
    break;
    }
    }
    }

    così appena riscontra che un radiobutton è stato selezionato imposta SELEZIONATO a true..

    funziona ma come faccio a fare in modo che invii il form solo ed esclusivamente se SELEZIONATO è TRUE??
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  5. #5

    Ci sono quasi... chi mi aiuta a finire?

    function controllaModulo(obj){
    var numRadio = document.nelCarrello.taglia.length
    for (i=0;i<numRadio;i++){
    if (document.nelCarrello.taglia[i].checked==true){
    var selezionato = true;
    break;
    }else{
    var selezionato = false;
    }
    }
    if(selezionato){
    document.nelCarrello.submit()
    }else{
    alert ("Devi selezionare almeno una taglia/misura");
    return false
    }
    }

    QUESTO FUNZIONA MA SULL'ELSE OLTRE CHE FARMI ALERT (devi inserire una taglia) dovrebbe anche bloccare l'invio del form... come faccio^??
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  6. #6
    CE L'HO FATTA??

    con questa funzione funziona... piu o meno.. perchè se non seleziono nessun radio mi da il messaggio di errore... se seleziono il primo radio button inserisce il prodotto nel carrello... ma se seleziono il terzo o il quarto e così via.... CONTINUA A DARMI IL MESSAGGIO DI ERRORE come se non avessi selezionato nessun radio.. perchè?? AIUTATEMIIII

    function controllaModulo(obj){
    var numRadio = document.nelCarrello.taglia.length;
    alert (numRadio)
    for (i=0;i<numRadio;i++){
    if (document.nelCarrello.taglia[i].checked==true){
    break;
    return true;
    }else{
    alert ("Devi selezionare almeno una taglia/misura");
    return false;
    }
    }
    }



    NEL FORM HO MESSO:

    <form name="nelCarrello" onsubmit="return(controllaModulo(this))" method........
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

  7. #7
    per dovere di cronaca... ci sono riuscito....


    function controllaModulo(obj){
    var numRadio = document.nelCarrello.taglia.length;
    for (i=0;i<numRadio;i++){
    alert(document.nelCarrello.taglia[i].value+" = "+document.nelCarrello.taglia[i].checked)
    if (document.nelCarrello.taglia[i].checked==true){
    tagliaSelezionata = 1
    break;
    }else{
    tagliaSelezionata = 0
    }
    }
    if (tagliaSelezionata>0){
    return true;
    }else{
    alert ("Devi selezionare almeno una taglia/misura");
    return false;
    }
    }
    Ho capito che quando poni una domanda e nessuno ti sa rispondere, è arrivato il momento in cui sei tu a poter dare delle risposte agli altri...

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.