J'utilise jQuery.timepicker
(pas sûr largement ce plugin est utilisé - il a été créé par Jon Thornton, Git: https://github.com/jonthornton/jquery-timepicker et Sample Page: http://jonthornton.github.io/jquery-timepicker/)2 jQuery Timepickers - Comment Distinguer (jquery.timepicker)
J'ai deux Timepickers que j'ai créés, StartTime et EndTime, qui peuplent les listes déroulantes avec des choix de 5 minutes entre 00:00 et 23:59.
par exemple,
$('#startTime').timepicker({
'minTime': '12:00am',
'maxTime': '11:59pm',
'step': '5',
'showDuration': 'false'
});
$('#endTime').timepicker({
'minTime': '12:00am',
'maxTime': '11:59pm',
'step': '5',
'showDuration': 'false'
});
Mais dans le code HTML finale cette insère DIVs identiques soutenant que les pop-up en cliquant sur un champ de saisie. Autant que je sache, ils ne se distinguent pas par la position, l'identité ou la classe.
<div class="ui-timepicker-wrapper" tabindex="-1" style="position: absolute; top: 230.233px; left: 345.667px; display: none;">
<ul class="ui-timepicker-list">
<li>12:00am</li>
<li>12:05am</li>
...
</ul></div>
pour les deux. Y a-t-il un moyen de les distinguer? Je dois supprimer certaines entrées de # 2 lors de la sélection dans # 1. Ce qui suit ne fonctionne pas car il supprime de la liste incorrecte. Dans cet exemple, j'ai besoin de supprimer de la liste # 2 l'heure sélectionnée dans # 1.
$('#endTime').on('showTimepicker', function() {
var current = $('.ui-timepicker-list li').filter(function() { // Exact match necessary
return $(this)[0].childNodes[0].textContent == $('#startTime').val();
});
if (current.length) {
$(current).remove();
}
});
Mais le problème est que la liste .ul-timepicker-list n'est pas directement à côté du #endTime. Nous ne pouvons pas faire d'hypothèses sur la position - les deux DIV sont à la fois à la fin et séparés des champs qu'ils soutiennent. –
J'ai regardé la documentation et trouvé une méthode propre. – Barmar