Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    8

    Come gestire un singolo checkbox

    Salve a tutti,
    ho questo codice in 2 pagine

    pagina1

    codice:
        $(document).ready(function (e){
            $("#frmContact").on('submit',(function(e){
                e.preventDefault();
                $("#mail-status").hide();
                $('#send-message').hide();
                $('#loader-icon').show();
                $.ajax({
                    url: "contact.php",
                    type: "POST",
                    dataType:'json',
                    data: {
                    "name":$('input[name="name"]').val(),
                    "surname":$('input[name="surname"]').val(),
                    "address":$('input[name="address"]').val(),
                    "city":$('input[name="city"]').val(),
                    "phone":$('input[name="phone"]').val(),
                    "phone2":$('input[name="phone2"]').val(),
                    "name2":$('input[name="name2"]').val(),
                    "surname2":$('input[name="surname2"]').val(),
                    "email":$('input[name="email"]').val(),
                    "content":$('textarea[name="content"]').val(),
                    "consenso":$('checkbox[name="consenso"]').val(),
                    "g-recaptcha-response":$('textarea[id="g-recaptcha-response"]').val()},                
                    success: function(response){
                    $("#mail-status").show();
                    $('#loader-icon').hide();
                    if(response.type == "error") {
                        $('#send-message').show();
                        $("#mail-status").attr("class","error");                
                    } else if(response.type == "message"){
                        $('#send-message').hide();
                        $("#mail-status").attr("class","success");                            
                    }
                    $("#mail-status").html(response.text);    
                    },
                    error: function(){} 
                });
            }));
        });
    codice HTML:
    <input type="checkbox" id="consenso" name="consenso" value="consenso" [PHP] echo $consenso;[/PHP] class="required consenso" aria-required="true" required>

    pagina2
    Codice PHP:
    $consenso filter_var($_POST["consenso"], FILTER_SANITIZE_STRING); 
    Codice PHP:
    if (isset($_POST['consenso'])) {        $consenso='checked="yes"';        } else {         $consenso='';         } 
    Quando passo il form con il submit, viene inviato lo stesso anche se non viene selezionato il checkbox che deve essere obbligatorio.
    Grazie

  2. #2
    Utente di HTML.it L'avatar di ninja72
    Registrato dal
    May 2020
    residenza
    -
    Messaggi
    319
    che roba è ?
    codice:
    
    
    Codice PHP:
     echo $consenso
    Comuque verifica che <input type="checkbox"> sia all'interno del form, il problema piu grande mi sembra legato al codice che utilizzi per la richiesta ajax , ometti $(this).serialize() il dataType e di tipo 'json' ma poi in php viene convertito tramite json_encode() ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    8
    Ok, grazie mille per l'aiuto!

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.