2012-04-26 4 views

Répondre

2

Non, ce n'est pas possible. La fonctionnalité f:ajax est ajoutée du côté serveur à un composant jsf. Le calendrier jQuery fonctionne du côté client. A la place, utilisez les fonctions jQuery ajax ou l'une des bibliothèques de composants basées sur JSF comme Primefaces.

2

Si vous voulez exécuter <f:ajax sur onSelect si vous avez besoin d'une solution cause de <f:ajax/> est une balise JSF et ne peut pas être conncted aux composants jquery de la même façon il le fait avec les JSF ...,

juste lieu

<h:commandButton id="myButton" style="display:none"> 
    <f:ajax render="..." listener="..." execute="..."/> 
</h:commandButton> 

et cliquez dessus de l'événement comme celui-ci onSelect

onSelect: function(dateText, inst) { 
    $("#myButton").click(); //this will click the hidden button and execute its `<f:ajax ` 
} 

vous pourriez avoir besoin d'un meilleur sélecteur pour $ (« # myButton ») (si sa forme à l'intérieur sans prependId = « false » etc ... mais devinez ce ne sera pas une grosse affaire pour vous ...)

BTW

primefaces library already integrated datepicker , the call it p:calendar , so take a look...

+0

vous me sauver toujours .... si doux ... –

+0

J'ai essayé votre chemin, mais les dates allez comme nulle. [Cochez cette question] (http://stackoverflow.com/questions/23838329/for-ajax-datepicker-send-date-as-null) –

+0

@FahimParkar, Si vous voulez envoyer la mise à jour de la valeur au serveur et non le premier que vous devez utiliser 'execute =" someId "' sur ce champ particulier – Daniel

Questions connexes