Подтвердить что ты не робот

HTML 5 Тип ввода = "дата" отключает ввод клавиатуры

Я работаю над Chrome Packaged App, поэтому мой код должен работать только в Chrome.

У меня есть следующий ввод

<input type="date" />

https://jsfiddle.net/jhbo4q2k/

В Chrome это автоматически добавляет DatePicker. Я хотел бы только сохранить этот Datepicker и отключить ввод с клавиатуры.

Возможно ли это?

EDIT:

Принятый ответ работает. Просто будьте осторожны с этим

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

Вы не можете использовать встроенные скрипты в упакованном приложении.

4b9b3361

Ответ 1

Вы можете использовать onkeydown и запретить пользователю вводить значение.

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

Ответ 2

Для ReactJS вышеуказанные решения не работают

Я должен был сделать:

<input type="date" onKeyDown={(e) => e.preventDefault()} .... />

Ответ 3

Привет, вы можете предотвратить всплывающее окно клавиатуры с помощью onfocus = "blur()". Поскольку, когда элемент имеет фокус, мы удалим его (нативная клавиатура не будет отображаться), однако с помощью щелчка мы можем продолжить нашу работу.

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

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

<script>

Ответ 4

используйте это:

 <input type="date" id="date_input">

с помощью jquery:

  $("#date_input").on("keydown", function(e) {
     e.preventDefault();
   });