Salve a tutti ragazzi,sono alle prime armi con js ed ho bisogno di verificare tramite js che il captcha sia "compilato".Il contenuto verrà inviato ad una pagina php per il controllo e l'invio di una mail,come posso fare? Di seguito il codice dell index e del js.
codice HTML:
<form action="" class="contacts" name="form"> <h3 class="form-title">Download the PDF</h3> <input type="text" id="nome" placeholder="Name" name="nome" class="form-control" style="height: 2.500rem; "> <input type="text" id="cognome" placeholder="Surname" name="cognome" class="form-control" style="height: 2.500rem;"> <input type="text" id="email" placeholder="Email" name="email" class="form-control" style="height: 2.500rem;"> <label>Language</label> <select class="form-control" name="check" id="check" style="height: 2.500rem;"> <option value="0">---Select---</option> <option value="1">Arabic</option> <option value="2">Czech</option> <option value="3">Mandarin Chinese</option> <option value="4">French</option> <option value="5">Japanese</option> <option value="6">English</option> <option value="7">Italian</option> <option value="8">Polish</option> <option value="9">Portuguese</option> <option value="10">Russian</option> <option value="11">Spanish</option> <option value="12">German</option> </select> <!--<div style="float:left; margin-top: 3px;"class="g-recaptcha" id="captcha" data-sitekey="6Ldo_wUTAAAAAApuH1cY9edwnw6C0bWEVYLVvebT"></div>--> <div id="rec"></div> <!--<textarea placeholder="Comment" class="form-control"></textarea>--> <button id="inviaa" class="btn btn-block" style="margin-top: 20px;">Send</button> <input type="checkbox" value="box" name="box" id="box" style="margin-top: 20px;">**Dichiaro di aver letto l'informativa e accetto i termini <div id="risposta"> </div> <!--<div class="alerts-wrap" id="miSonRotto"></div>--> </form>
codice:
contactForm = function() {
$(document).ready(function(){
$("#invia").click(function(){
//Recuperiamo tutte le variabili
var valid = '';
var isr = ' è richiesto.</p>';
var name = $("#nome").val();
var mail = $("#email").val();
var cognome = $("#cognome").val();
var selected = $("#check").val();
var check = $("#box").val();
//Eseguiamo una serie di controlli
if (name.length<1) {
valid += '<p>Un nome valido'+isr;
}
if (cognome.length<1) {
valid += '<p>Un cognome valido'+isr;
}
if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$)/i)) {
valid += '<p>Un indirizzo e-mail valido'+isr;
}
if (document.form.check.selectedIndex==0) {
valid += '<p>Una nazione è richiesta</p>';
}
if (!(document.form.check.checked)) {
valid += '<p>Leggere e accettare i termini</p>';
}
//Se i controlli non vengono superati, appare il messaggio di errore.
if (valid!='') {
$("#risposta").fadeIn("slow");
$("#risposta").html("<p><b>Errore:</b></p>"+valid);
$("#risposta").css("background-color","#ffc0c0");
}
//Se i controlli vengono superati, compare un messaggio di invio in corso
else {
var datastr ='name=' + name + '&mail=' + mail + '&cognome=' + cognome + '&nazione=' + selected;
$("#risposta").css("display", "block");
$("#risposta").css("background-color","#FFFFA0");
$("#risposta").html("<p style='color:#000000;'>Invio del messaggio in corso..</p>");
$("#risposta").fadeIn("slow");
setTimeout("send('"+datastr+"')",2000);
}
return false;
});
});
};
function send(datastr){
$.ajax({
type: "POST",
url: "http://www.miosito.it/mail.php", //url di esempio
data: datastr,
cache: false,
success: function(html){
$("#risposta").fadeIn("slow");
$("#risposta").html(html);
$("#risposta").css("background-color","#e1ffc0");
setTimeout('$("#risposta").fadeOut("slow")',2000);
}
});
}
Ho provato con getResponse() come diceva google ma non quando faccio un controllo su quella funzione mi refresha la pagina.Non so come muovermi!