jQuery(document).ready(function() { residenceFilter (); residenceFilterByCommune (); agenceFilterByResidence (); }); jQuery(document).bind('gform_post_render', function(event, form_id){ residenceFilter(); residenceFilterByCommune(); agenceFilterByResidence (); }); residenceFilter = function () { var agenceClass = '.get-agences select'; var residenceClass = '.get-residences select'; jQuery(agenceClass).change(function() { var agenceSelect = jQuery(this), agence = agenceSelect.val(), residenceSelect = agenceSelect.parents('form').find(residenceClass); if (agence != 'default') { jQuery.ajax({ type: 'POST', url: 'https://www.logirem.fr/wp-admin/admin-ajax.php', data: { myAgence : agence, action: 'get_residence_name' }, success: function(data){ residenceSelect.empty(); var options = jQuery.parseJSON(data); for(i = 0; i < options.length; i ++){ residenceSelect.append(''); } residenceSelect.removeAttr('disabled'); } }); } }); } residenceFilterByCommune = function () { // console.log('toto'); var communeClass = '.get-communes select'; var residenceCommuneClass = '.get-residences-by-commune select'; jQuery(communeClass).change(function() { var communeSelect = jQuery(this), commune = communeSelect.val(), residenceSelect = communeSelect.parents('form').find(residenceCommuneClass); if (commune != 'default') { jQuery.ajax({ type: 'POST', url: 'https://www.logirem.fr/wp-admin/admin-ajax.php', data: { myCommune : commune, action: 'get_residence_by_commune_name' }, success: function(data){ residenceSelect.empty(); var options = jQuery.parseJSON(data); for(i = 0; i < options.length; i ++){ residenceSelect.append(''); } residenceSelect.removeAttr('disabled'); } }); } }); } agenceFilterByResidence = function () { // console.log('toto'); var residenceClass = '.get-residences-by-commune select'; var agenceClass = '.get-agence-hidden input'; jQuery(residenceClass).change(function() { var residenceSelect = jQuery(this), residence = residenceSelect.val(), agenceSelect = residenceSelect.parents('form').find(agenceClass); // console.log(residence); var residence_split = residence.split(' - '); residence = residence_split[0]; // console.log(residence); // return false; if (residence != 'default') { jQuery.ajax({ type: 'POST', url: 'https://www.logirem.fr/wp-admin/admin-ajax.php', data: { myResidence : residence, action: 'get_antenne_by_residence_name' }, success: function(data){ agenceSelect.val(); var options = jQuery.parseJSON(data); agenceSelect.val(options.text); } }); } }); }