web-dev-qa-db-fra.com

HTML 5 Type d'entrée = 'date' désactiver l'entrée au clavier

Je travaille sur une application packagée Chrome, mon code ne doit donc fonctionner que sous Chrome.

J'ai l'entrée suivante 

<input type="date" />

https://jsfiddle.net/jhbo4q2k/

Sur Chrome, cela ajoute automatiquement un DatePicker. Je voudrais seulement garder ce Datepicker et désactiver l'entrée au clavier. 

Est-ce possible? 

MODIFIER:

La réponse acceptée fonctionne. Méfiez-vous de cela

https://developer.chrome.com/extensions/tut_migration_to_manifest_v2#inline_scripts

Vous ne pouvez pas utiliser de scripts intégrés dans une application packagée.

13
b-m-f

Vous pouvez utiliser onkeydown et empêcher l’utilisateur de saisir la valeur.

<input type="date" onkeydown="return false" />

37
mohamedrias

Pour ReactJS, les solutions ci-dessus ne fonctionnent pas

Je devais faire:

<input type="date" onKeyDown={(e) => e.preventDefault()} .... />
0
François Hereng

Bonjour, vous pouvez éviter les popups clavier en utilisant onfocus = "blur ()". Depuis que l'élément a le focus, nous le supprimerons (les claviers natifs ne s'afficheront pas), mais avec onclick, nous pouvons poursuivre nos opérations.

 <input type="date" class="form-control"  onfocus="blur()" onclick="dosomework()" name="some-name" id="some-id" >
<script>

function dosomework(){
 alert('hi');
 }

<script>