Obtenir le temps à partir d'un Bootstrap Timepicker
Je vais essayer d'obtenir le temps d'une Bootstrap Timepicker à l'aide de la getTime fonction, mais seulement obtenir un message d'erreur dans la console lorsque j'appuie sur le bouton (avec l'ID de mon bouton voir code ci-dessous.)
HTML
<div class="input-append bootstrap-timepicker-component">
<input type="text" class="timepicker input-small">
<span class="add-on">
<i class="icon-time"></i>
</span>
</div>
JavaScript
<script type="text/javascript">
$('#my-button').on('click', function() {
alert($('.timepicker').getTime());
});
$('.timepicker').timepicker({
template : 'dropdown',
showInputs: false,
showSeconds: false
});
</script>
D'erreur dans la console
Uncaught TypeError: Object [object Object] has no method 'getTime'
J'ai été à essayer de comprendre ce pendant des heures. Je pensais que je pouvais utiliser le code source pour savoir comment utiliser le sélecteur, et il semble qu'il y ait un getTime() de la fonction, mais je ne peux pas pour la vie de me comprendre comment l'utiliser. Je suis à l'aide de Rails, pour ce que ça vaut. Merci les gars!
OriginalL'auteur Asher Walther | 2012-07-20
Vous devez vous connecter pour publier un commentaire.
Ce n'est pas une fonction publique, la méthode getTime est privé juste à cette fonction. Ce qui signifie que vous ne pouvez pas y accéder.
Si vous voulez obtenir le temps de faire juste un
.val();
et de l'analyser. Ou vous pouvez modifier le script pour exposer.getTime();
fonction.OriginalL'auteur Steven
FWIW, il est possible de faire appel
getTime()
mais il ne peut pas être appelé directement parce que$('.timepicker')
retourne le <input> élément du DOM, pas le timepicker objet.Il n'est pas mentionné dans la documentation, mais si vous regardez la bootstrap-timepicker.js source puis la fonction de liaison (
$.fn.timepicker
) stocke une référence à la réalité de timepicker objet par rapport à l'élément DOM, à l'aide de jQuery données() de la fonction.Donc, cela fonctionne:
(Bien sûr
getTime()
toujours retourne une chaîne de caractères, donc dans ce cas, le parent de la suggestion de l'utilisation de val() est probablement plus propre, sauf si vous pensez qu'il pourrait être invalide les données saisies dans le champ, et pas encore nettoyé par le timepicker.)OriginalL'auteur projectgus
OriginalL'auteur Ashish Kumar