2010-05-28 7 views
1

Je dois faire apparaître le programme datepicker lorsque je clique sur un lien, puis envoyer la date sélectionnée à une autre page par le biais d'un appel postal.Appelez jquery datepicker à partir d'un lien et envoyez la date par un appel

T essayé d'utiliser ce code pour l'appel du lien:

$(".click-on-link").click(function(){ 
    $('#datepicker').datepicker({ 
     changeMonth: true, 
     changeYear: true, 
     dateFormat: 'dd/mm/yy', 
     firstDay: 1 
    }); 
}); 

et le code html:

<a class="click-on-link" href="#">show datepicker</a> 

mais il ne fonctionne pas. Une idée?

Merci!

Répondre

3
$(function() { 
    $(".click-on-link").click(function() { 
     $('#datepicker').datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      dateFormat: 'dd/mm/yy', 
      firstDay: 1, 
      onSelect: function(dateText, inst) { 
       alert(dateText) // make your AJAX call! 
      } 
     }).focus(); //make the datepicker appear! 
    }); 
}); 
+0

cela fonctionne! Merci! la seule chose est que j'ai dû ajouter $ ('# datepicker'). datepicker ("détruire"); après l'appel AJAX afin de le fermer. – Alex

+0

ce n'est pas une "chose", c'est le seul moyen! ;-) –

+0

vrai. il l'affiche aussi comme inline et sur la barre d'outils il n'affiche pas le bouton de fermeture - aussi le seul moyen. – Alex

0

Je commencerai par la première initialisant votre sélecteur de date lorsque la page se charge comme suit:

$(document).ready(function() { 
    // Date picker initialisation 
    $("#datepicker").datepicker({ 
     showOn: 'button', 
     buttonImage: 'images/button_cal.gif', 
     buttonImageOnly: true, 
     dateFormat: 'd MM yy', 
     minDate: new Date(), 
     onSelect: function(dateText, inst) { 
        // inst.selectedYear, selectedMonth and selectedDate hold the values you need. Use $.ajax() to send off to the server. 
     } 
    }); 

    // Show the date picker 
     $(".class").click(function() { 
     $("#datepicker").datepicker("show"); 
    }); 

}); 

Essayez l'exemple suivant, qui vous permet de cliquer sur le texte « Date » qui affiche le sélecteur de date pour moi. Peut-être que nous pouvons travailler à partir de cet exemple pour faire fonctionner votre scénario:

<script type="text/javascript"> 
$(function() { 
    $("#datepicker").datepicker({}); 

    $("#test").click(function(){ 
     $("#datepicker").datepicker('show'); 
    }); 
}); 
</script> 

<p id="test">Date:</p> <input type="text" id="datepicker"> 
+0

un besoin de le montrer quand je clique sur un lien, et non sur une image, comme dans: show datepicker Alex

+0

Désolé qui était un peu les restes exemple de code d'un autre projet. Jetez un oeil sur le bit où j'ai eu // montrer le sélecteur de date Espérons que le bit onSelect vous aide à accéder à la date et l'envoi via AJAX – Alistair

+0

non, ça ne fonctionne pas, dans le sens où il ne montre pas la datepicker div . – Alex

Questions connexes