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

    Checkbox con spunta obbligatoria

    Vorrei aggiungere una casella di controllo ad un modulo per l' iscrizione alla newsletter in modo tale da consentire le iscrizioni solo se vengono accettate le condizioni del servizio (privacy)

    Ho provato a copiare il codice che controlla i campi nome e indirizzo email sostituendo con il nome della casella di controllo ma non funziona

    Il nome della casella è nl_privacynewsletter

    Il codice è il seguente:

    codice:
    	$('#subscribe_form').submit(function() {
    		if($('#nl_first_name').val() == '') {
    			alert('%%LNG_NewsletterEnterFirstName%%');
    			$('#nl_first_name').focus();
    			return false;
    		}		
    
    		if($('#nl_email').val() == '') {
    			alert('%%LNG_NewsletterEnterEmail%%');
    			$('#nl_email').focus();
    			return false;
    		}
    
    		if($('#nl_email').val().indexOf('@') == -1 || $('#nl_email').val().indexOf('.') == -1) {
    			alert('%%LNG_NewsletterEnterValidEmail%%');
    			$('#nl_email').focus();
    			$('#nl_email').select();
    			return false;
    		}
    
    		if($('#nl_privacynewsletter').val() !== undefined) {
    			alert('%%LNG_AccettoITermini%%');
    			$('#nl_privacynewsletter').focus();
    			return false;
    		}
    		// Set the action of the form to stop spammers
    		$('#subscribe_form').append("<input type=\"hidden\" name=\"check\" value=\"1\" \/>");
    		return true;
    		
    	});
    Grazie in anticipo

  2. #2
    Così com'è l' alert di campo obbligatorio salta fuori in tutti e 2 i casi: casella spuntata o casella non spuntata

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    if($('#nl_privacynewsletter checkbox:checked'){...}
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Ho appena provato la modifica però continua a saltare fuori l' alert in tutti e 2 i casi
    Questo è il codice scritto nel modulo:


    codice:
    <label for="nl_privacynewsletter">%%LNG_SpuntaTermini%%</label>
    <input type="checkbox" class="Checkbox" id="nl_privacynewsletter" name="nl_privacynewsletter" />

  5. #5
    Ho provato anche in quest'altro modo:

    codice:
    		if($('#nl_privacynewsletter').checked !== 'undefined') {
    Ma il comportamento è identico al precedente

  6. #6

    Forse risolto

    Dopo non so quanti tentativi, la soluzione sembra la seguente


    codice:
    		if($('#nl_privacynewsletter').is(":checked"))
    		 {
    
    		} 
    	   else
            {
    			alert('%%LNG_AccettoITermini%%');
    			$('#nl_privacynewsletter').focus();
    			return false;
    		}
    quindi per poter inviare i dati è necesario compilare tutti e 3 i campi compresa la casella di controllo aggiunta e solo in questo caso i campi vengono salvati nel database

    Però, dal momento che ci sono arrivato per tentativi, mi chiedo se questa sia la soluzione corretta

    cavicchiandrea grazie per il suggerimento, sarei stato ancora su val(), undefined, 0, 1 , false, true....

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.