Ora funziona..fa il controllo campo per campo in modo corretto...
E' tutta sera che sbatto la testa
per far convivere un paio di funzioni ma senza risultato!
codice:
$(document).ready(function(){
$("#contatto").jqTransform();
$("#contatto").submit(function(){
var nam = $("input#nome").val();
var cog = $("input#cogn").val();
var sub = $("select#subject").val();
var vi = $("input#via").val();
var ca = $("input#cap").val();
var pro = $("select#prov").val();
var cit = $("select#citta").val();
var te = $("input#tel").val();
var emai = $("input#email").val();
var msg = $("input#mess").val();
var prv = $("input#privacy_si").val();
if($(".required").length > 0) $(".required").remove();
if (nam==""){
$('#nameInput').append("<div class='required'>required</div>");
document.contatto.nome.value='';
document.contatto.nome.focus();
return false;
}
if (cog==""){
$('#surnInput').append("<div class='required'>required</div>");
document.contatto.cogn.value='';
document.contatto.cogn.focus();
return false;
}
if (sub==""||sub=="Scegli"){
$('#subInput').append("<div class='required'>required</div>");
document.contatto.subject.value='';
document.contatto.subject.focus();
return false;
}
if (vi==""){
$('#viaInput').append("<div class='required'>required</div>");
document.contatto.via.value='';
document.contatto.via.focus();
return false;
}
if (ca==""){
$('#capInput').append("<div class='required'>required</div>");
document.contatto.cap.value='';
document.contatto.cap.focus();
return false;
}
if (pro==""||pro=="Scegli"){
$('provInput').append("<div class='required'>required</div>");
document.contatto.prov.value='';
document.contatto.prov.focus();
return false;
}
if (cit==""||cit=="Scegli"){
$('#cittaInput').append("<div class='required'>required</div>");
document.contatto.citta.value='';
document.contatto.citta.focus();
return false;
}
if (te==""){
$('#telInput').append("<div class='required'>required</div>");
document.contatto.tel.value='';
document.contatto.tel.focus();
return false;
}
if (emai==""){
$('#emailInput').append("<div class='required'>required</div>");
document.contatto.email.value='';
document.contatto.email.focus();
return false;
}
else if(!emai.match(/^([a-z0-9\-\_\.]{3,})+@([a-z0-9\-\_])+(\.[a-z]{2,6})+$/i)){
$('#emailInput').append("<p class='required'>required</p>");
document.contatto.email.focus();
return false;
}
if (prv.checked == false) {
$('#privacyInput').append("<p class='invalid'>invalid</p>");
document.contatto.privacy_si.focus();
return false;
}
else{
var sendData = '&nam=' + nome + '&cog=' + cogn + '&sub=' + subject + '&vi=' + via + '&ca=' + cap + '&pro=' + prov + '&cit=' + citta + '&te=' + tel + '&emai='+ email + '&prv='+ privacy_si;
$.ajax({
type: "POST",
url: "submit.php",
data: sendData,
success: function() {
$('#cont-form').html("<div id='submitted'></div>");
$('#submitted').html("<?php echo $successMessage;?>")
.hide()
.fadeIn(1000, function() {
});
}
});
return false;
}
});
});
intanto con $("#contatto").jqTransform(); richiamo la funzione che mi fa lo style dei vari input ecc..
la funzione per il controllo sembrerebbe andare se non fosse che mi si inchioda sulla select delle province e citta'..
dato che le scelgo in questo modo..
codice:
var regiondb = new Object()
regiondb["Agrigento"] = [regiondb["Ascoli Piceno"] = [{value:"", text:""},
{value:"", text:""},
{value:"", text:""},
{value:"", text:""}];
regiondb["Alessandria"] = [{value:"", text:""},
{value:"", text:""},
{value:"", text:""}];
regiondb["Ancona"] = [{value:"", text:""},
{value:"", text:""},
{value:"", text:""}];
function setCities(chooser) {
var newElem;
var where = (navigator.appName == "Microsoft Internet Explorer") ? -1 : null;
var cityChooser = chooser.contatto.elements["citta"];
while (cityChooser.options.length) {
cityChooser.remove(0);
}
var choice = chooser.options[chooser.selectedIndex].value;
var db = regiondb[choice];
newElem = document.createElement("option");
newElem.text = "- - - -";
newElem.value = "";
cityChooser.add(newElem, where);
if (choice != "") {
for (var i = 0; i < db.length; i++) {
newElem = document.createElement("option");
newElem.text = db[i].text;
newElem.value = db[i].value;
cityChooser.add(newElem, where);
}
}
}
Le funzioni se usate separatamente funzionano..
non riesco a capire cosa possa essere.
Confido in te Vindav..o in qualche buon anima che possa aiutarmi..