Меня смущает куча аяксов и неработающие Алерты после успешного собора данных.
Задаяча такая нужно вводить данные в форму, по реультатам данных из селекта искать в базе новые данные, но и старые естественно не терять. У меня возник вопрос можно ли оптимизировать сей код и почему алерты не работают, ??
$(function () {
var name = $('#inputName').val();
var email = $('#inputMail').val();
var selectTerritory= $('#selectTerritory').val();
$.ajax({
type : "POST",
url: "registration.php",
data: {Territory:selectTerritory,name:name,email:email},
success: function (data) {
$('#detale').html(data);
$('#selectTerritory').val(selectTerritory);
$('#inputName').val(name);
$('#inputMail').val(email);
}
});
$('#selectTerritory').change(function(){
var selectTerritory= $(this).val();
var name = $('#inputName').val();
var email = $('#inputMail').val();
$.ajax({
type : "POST",
url: "registration.php",
data: {Territory:selectTerritory,name:name,email:email},
success: function (data) {
$('#detale').html(data);
$('#selectTerritory').val(selectTerritory);
$('#inputName').val(name);
$('#inputMail').val(email);
}
});
});
$(document).on('change', '#selectRayons',function () {
var selectRayons = $('#selectRayons').val();
var selectTerritory = $('#selectTerritory').val();
var name = $('#inputName').val();
var email = $('#inputMail').val();
$.ajax({
type: "POST",
url: "registration.php",
data: {Rayons: selectRayons,Territory:selectTerritory,name:name,email:email},
success: function (data) {
$('#detale').html(data);
$('#selectRayons').val(selectRayons);
$('#inputName').val(name);
$('#inputMail').val(email);
}
});
});
$(document).on('change', '#selectTowns',function () {
var selectTerritory = $('#selectTerritory').val();
var selectRayons = $('#selectRayons').val();
var selectTowns = $('#selectTowns').val();
var name = $('#inputName').val();
var email = $('#inputMail').val();
$.ajax({
type: "POST",
url: "registration.php",
data: {Rayons: selectRayons,Territory:selectTerritory,Towns:selectTowns,name:name,email:email},
success: function (data) {
$('#detale').html(data);
$('#selectTerritory').val(selectTerritory);
$('#selectRayons').val(selectRayons);
$('#selectTowns').val(selectTowns);
$('#inputName').val(name);
$('#inputMail').val(email);
}
});
});
$("#myForm").submit(function(){
var form =$(this);
var error=false;
form.find("input,select").each(function() {
if ($(this).val() == '' ) {
alert('Зaпoлнитe пoлe "' + $(this).attr('title') + '"!');
error = true;
}
});
});
if (!error){
var data = form.serialize();
$.ajax({
type: "POST",
url: "registration.php",
dataType : 'json',
data: data,
beforeSend: function(data) {
form.find('button[type="submit"]').attr('disabled', 'disabled');
},
success: function(data){
if (data['error']) {
alert(data['error']);
} else {
alert('Форма отравлена!');
}
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
},
complete: function(data) {
form.find('button[type="submit"]').attr('disabled', false);
}
});
return false;
}
});