Bonjour,
Je sais que c'est un problème récurrent et que plein de solutions existent sur internet mais aucune n'a résolu mon problème.
Je cherche à utiliser de l'ajax pour mettre a jour un champ en fonction d'un select.
J'ai donc créer ma fonction Ajax ainsi que tous les appels en début de fichier :
?php
wp_enqueue_script( 'script', get_template_directory_uri().'/js/script.js', array('jquery'), '1.0', true );
wp_localize_script('script', 'ajaxurl', admin_url( 'admin-ajax.php' ) );
add_action('wp_ajax_nopriv_ajax_calendrier','ajax_calendrier_bis');
add_action('wp_ajax_ajax_calendrier','ajax_calendrier_bis');
function ajax_calendrier() {
?>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
// sur l'evenement (select)#selection.onChange
$( '#jeu_calendrier' ).on('change', function(){
// prendre valeur actuelle de #selection
var s = $(this).val();
jQuery.post(
ajaxurl,
{
'action': 'ajax_calendrier',
's': s,
'param' : 'test2',
},
function(response){
$('#test').html(response)
}
);
});
});
</script><?php };
function ajax_calendrier_bis() {
$html="";
$html.=$_POST['s'];
echo $html;
exit;
}
?>
Sauf qu'une fois que je change mon select, j'ai un jolie "0" qui apparaît à la place de la valeur du select.
Pourtant quand je vais voir dans le log, la requête à l'air bonne.