Je n'ai presque aucune connaissance de la programmation Web, mais j'ai été chargé de résoudre quelque chose sur le site Web de mon entreprise. Apparemment, j'ai un problème avec les navigateurs utilisant HTML5 sur un site hérité à l'aide de type = "date" et j'ai besoin de trouver un moyen de trouver un moyen de trouver.
Mon site contient de nombreux champs de date que l'utilisateur doit entrer comme tel: p> dans chaque navigateur que nous utilisons actuellement, sauf chrome, cela fonctionne simplement bien. Chrome est le seul navigateur qui fournit des boutons roulants pour faire défiler la date. Ce que je vois à l'arrière de ceci est une tentative de faire cela: p> i Obtenez une erreur de date invalide qui signifie que nous ne pouvons pas utiliser Chrome pour remplir ce formulaire. Y a-t-il un moyen de contourner ce problème? P> P>
4 Réponses :
Chrome n'a pas de problème avec les entrées de date, Vous utilisez le format de date incorrect , monsieur. Chrome n'est pas le seul navigateur jusqu'à aujourd'hui qui prend en charge les nouvelles entrées HTML5. L'opéra par exemple affiche une liste déroulante avec un calendrier sur les entrées avec Aussi l'attribut taille n'existe pas sur les entrées de date HTML5. P> type = "date" code>. P>
D'accord, je suis désolé de la formuler de cette façon. Comme je l'ai dit, je n'ai presque aucune connaissance de Web dev. Ce site a environ 10 ans environ et la société n'a aucun budget pour le remplacer, de sorte que j'ai été chargé de le garder à jour. Existe-t-il un moyen de garder Chrome d'utiliser HTML5 dans cette instance spécifique et de revenir à la manière dont elle fonctionnait? Cela fonctionnait bien jusqu'à la version 9 environ.
J'ai corrigé mon libellé d'origine pour être moins offensant.
Le problème ici est que votre / le site a utilisé un type d'entrée de «date» bien avant qu'il ne soit inclus dans des normes-brouillon. Si vous pouvez simplement envoyer un sorcière le type au "texte", ce serait la solution la plus simple.
Merci beaucoup! Heureusement, le DEV a écrit dans un domaine caché pour le champ de date qui compte pour les requêtes de la base de données. J'espère que je n'aurai pas à résoudre ce désastre. :)
La prise en charge en réalité chrome pour "date" est em> cassé. ( voir ici ). Au moins pour le moment. P>
L'utilisation de "date" dans le HTML est absolument fine - le navigateur qui ne connaît pas ou ne prend pas en charge un type d'entrée est censé revenir à taper = "Texte". P>
Actuellement chrome prend en charge partiellement la date, d'une manière essentiellement cassée (il ajoute quelques boutons en haut, mais pas de satellie.) p>
Bien sûr, vous devez garder à l'esprit que si vous sont em> à l'aide de type = 'date', et Si le navigateur le supporte , vous voudrez peut-être désactiver le support saintPicker que vous utiliseriez autrement. P>
Mise à jour (6 févr. 2012): strong> p>
Il me semble que tel est maintenant corrigé. Chrome ne prétend plus supprime le type d'entrée = «date» et ne fournit pas la mise en œuvre partiellement complète. P>
chrome fait em> avez maintenant Type d'entrée = "Date" Support , et c'est plus fonctionnel cette fois. P>
En fait
@feeEela La mise en œuvre actuelle est beaucoup plus fonctionnelle que précédemment. La mise en œuvre précédente était essentiellement inutilisable, comme démontrée par le fait que l'équipe a plus tard choisi de le supprimer.
Et je préférerais que l'un des pickers javascript populaires sur la tentative chromée à moitié assise.
Le champ de valeur pour le type d'entrée = L'entrée doit être dans le format AAAA-MM-DD. Vérifiez les normes W3 à ce sujet. a> p>
Cela signifie que vous devez faire quelque chose comme DateTime.now.tostring ("AAA-MM-DD"). Dans votre code, je suggérerais un HTMLhelper personnalisé. P>
Le format de la date dans le navigateur dépend entièrement de vos paramètres système. P>
Utilisez ce format de date: Date ("Y-M-D"); Code> P>