2014-05-24 3 views
0

Dans mon application, nous rendons DatePicker(calender) avec le code suivant.Il vient à la perfection.Comment extraire les dates sélectionnées de jquery datePicker

$('#date2').DatePicker({ 
    flat: true, 
    date: [], 
    current: '2008-07-31', 
    format: 'Y-m-d', 
    calendars: 1, 
    mode: 'multiple', 
    starts: 0 
}); 

Après render, il vient comme this .Still gars Html pas encore mis en œuvre CSS .De l'utilisateur de calendrier peut sélectionner plusieurs dates.

nous utilisons Backbone and Marionette dans Application.What Je veux Si l'utilisateur sélectionner une date de calendrier, doit déclencher un événement dans la fonction de rappel veut console dates sélectionnées(). Pour cela, j'ai essayé avec le code suivant, mais il ne fonctionne pas .

events:{ 
    "select #date2":"consoleDates" 
}, 
consoleDates:function(event){ 
console.log($(event.target).val()); 
} 

J'ai aussi essayé avec l'événement change, c'est pas non plus le tir.

Comment puis-je résoudre ce problème.

Répondre

0

Ok, si vous voulez vraiment utiliser ce plugin, il ne se déclenche pas des événements DOM . Parce que ce plugin est peu daté, je pense que le concept de CustomEvents n'a pas encore été introduit. Quoi qu'il en soit, vous devrez réellement lier un événement personnalisé dans l'instanciation du code. Donc, il devrait ressembler à ceci:

$('#date2').DatePicker({ 
    flat: true, 
    date: [], 
    current: '2008-07-31', 
    format: 'Y-m-d', 
    calendars: 1, 
    mode: 'multiple', 
    starts: 0, 
    onChange: function(formatted, dates){ 
     $('#date2').trigger('datePick', arguments); 
    } 
}); 

ensuite dans la structure centrale, il devrait ressembler à ceci:

events:{ 
    "datePick #date2":"consoleDates" 
}, 
consoleDates:function(event, formatted, dates){ 
    console.log(formatted.join(', ')); 
} 
+0

Voici également un violon afin que vous puissiez voir le résultat http://jsfiddle.net/Rh3kw/3/ – josephnvu

+0

Jusqu'à voter pour la bonne réponse s'il vous plaît =) – josephnvu

1

Utiliser sur sélection. Essayez ceci:

$('.selector').datepicker({ 
    onSelect: function(date) { 
     alert(date); 
    } 
}); 

Mise à jour: En regardant la doc, la propriété en est onChange:

onChange: function(formated, dates){ 
    console.log(dates); 
} 
+0

simplement j'ai couru votre code dans 'console', il est montrant une erreur' TypeError: non défini n'est pas un fonction ». Donc, pour mes tests, j'ai lancé '$ ('. Selector')' ça retourne '[]'. – user3608168

+0

pourquoi voudriez-vous exécuter le code dans la console. et quelle datepicker vous utilisez –

+0

J'utilise calender 'multiple-select'.Vous pouvez voir http://www.eyecon.ro/datepicker/ – user3608168

Questions connexes