Page 1 sur 1

Redirection javascript formulaire

Posté : 06 avr. 2016, 20:50
par yoann38
Salut à tous.
Voilà je cherche à faire en sorte que si l'utilisaeur renseigne le select ville et loisir alors il soit redirigé suivant ce qu'il a choisi et pareil si il a choisi un département et loisir.

Actuellement ca marche si il a choisi une ville ou si il a choisi un département mais pas si il choisi un loisir ....

Mon js:
$(document).ready(function(){
	
	 $('#choice').on('submit', function(e) { 
    e.preventDefault(); // On annule le fait d'avoir validé le formulaire
	
    var dep = $('#departement').val();
	var html = '.html';
	
	var loi = $('#loisir').val();

	// parametre ville
	var vil = $('#ville').val();
	var html = '.html';
	
	var loisir = $('#loisir').val();

	
	// parametre département
	if(dep == "" && vil == ""){
	location.href = 'sortie.php';
	}
	else if(vil == ""){
	location.href = 'toutes-les-sorties-du-departement-'+dep+html;
	}
	
	else if (vil == "" && loi == ""){
	location.href = 'toutes-les-sorties-'+loi+'-de-la-ville-de-'+vil+html;
	}
	
	else{
	location.href = 'toutes-les-sorties-de-la-ville-de-'+vil+html;
	}
		
  });
	
    $('.filter-tabs a, .page:not(.active)').on('click', function(e) {
				
        e.preventDefault(); // On annule le fait d'avoir cliqué sur le lien.
        var du = $(this).attr('data-du');
        var au = $(this).attr('data-au');
        var page = $(this).attr('data-page');
        chargerDonnees(du, au, page);
	});
});
// On déclare la fonction qui va aller chercher les données en base de données selon le bouton cliqué
function chargerDonnees(du, au, page) {
	
	var dep = $('#departement').val();
	var region = $('#departement').attr('data-region');
	var loisir = $('#loisir').val();
	var vil = $('#ville').val();
	var datetimepicker2 = $('#datetimepicker2').val();
	
    $.ajax({
        type: 'POST',
        url: 'include/rechercheAjax.php',
        data: 'du='+du+'&au='+au+'&page='+page+'&departement='+dep+'&region='+region+'&loisir='+loisir+'&ville='+vil+'&date='+datetimepicker2,
        processData: true,
        async: false,
		

        beforeSend: function() {
            $('#bloc_page').html('Chargement en cours');
        },
        success: function (data) {
            $('#bloc_page').html(data);
            // On doit le rappeller car un nouveau bloc pagination a été créé
			
            $('.page:not(.active)').on('click', function(e) {
				
                e.preventDefault(); // On annule le fait d'avoir cliqué sur le lien.
                var du = $(this).attr('data-du');
                var au = $(this).attr('data-au');
                var page = $(this).attr('data-page');
                chargerDonnees(du, au, page);
            });
        }
    });
}

Mon formulaire:
<form id="choice" name="liste deroulante" method="POST"  action="">

<div class="col-md-12 col-sm-12 max">
	<input title="Recherche par ville" class="form-control" placeholder="Recherche par ville" value="<?php echo  !empty($_REQUEST['ville']) ? $_REQUEST['ville'] : NULL;?>" name="ville" id="ville" type="search">
</div>   
           
<div class="col-md-3 col-sm-3 max">
<?php // Gestion des variables des départements
$region = !empty($_SESSION['membre']['id_region']) ? simplification($aRegion[$_SESSION['membre']['id_region']]) :NULL;
$region = !empty($_REQUEST['region']) ? $_REQUEST['region'] : $region; /* Si la region est renseigné dans l'url il est prioritaire */
$departement = !empty($_SESSION['membre']['id_departements']) ? $_SESSION['membre']['id_departements'] : NULL;
$departement = !empty($_REQUEST['departement']) ? $_REQUEST['departement'] : $departement; /* Si le departemebt est renseigné dans l'url il est prioritaire */
?>                       
<select name="departement" id="departement" class="selectpicker max" data-region="<?php echo $region; ?>">
<option value="">Votre département</option>
<?php echo aRegionDepartement($region, $departement); ?>
</select>
</div>  
                    
<!-- Select des sorties -->      
<div class="col-md-3 col-sm-3 max">
<select title="choisir une sortie" name="loisir" id="loisir" class="selectpicker max">
<option value=""> Toutes les sorties</option
><?php
asort($aLoisirs);
foreach($aLoisirs as $k => $v) {
$selected = !empty($_REQUEST['loisir']) && ($_REQUEST['loisir'] == $k) ? ' selected="selected"' : NULL;
echo '<option value="'.$k.'"'.$selected.'>'.$v.'</option>'."\n";
}
?>
</select>
<?php echo !empty($region) ? '<input type="hidden" name="region" value="'.$region.'" />' : NULL; ?>
</div>
                    
<div class="col-md-3 col-sm-3 max">  
    <div class="input-group input-group">
    <span class="input-group-addon"><i class="fa fa-calendar-o"></i></span>  
    <input title="Recherche de sortie par date "id="datetimepicker2" name="datetimepicker" placeholder="Recherche par date" type="text" readonly value="<?php echo !empty($_REQUEST['datetimepicker']) ? $_REQUEST['datetimepicker'] : NULL; ?>">
    </div>    
</div>
     
<div class="col-md-3 col-sm-3 max">
                 <input type="submit" autofocus id="btn_select" class="find" onFocus="this.blur();" value="Rechercher">
             </div>
</form>