Как скрыть HTML календарь после добавления JQuery указателя даты в Firefox? - PullRequest
1 голос
/ 20 апреля 2020

моя проблема - второй календарь, который отображается одновременно с первым. Только на Firefox. Я добавил JQuery datepicker в код, чтобы календарь работал на IOS, и теперь на IOS все в порядке, но на Firefox Я получил календарь от Jquery и basi c HTML календарь от типа ввода = " date ".

Я хотел бы удалить календарь HTML в Firefox, как и в других браузерах, и оставить только JQuery календарь.

Спасибо за помощь.

Изображение 1 Изображение 2

Это мой код

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="http://code.jquery.com/jquery-1.11.2.min.js" type="text/javascript"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js" type="text/javascript"></script>
    <link type="text/css" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" />
</head>
<body>
    <input type="date" class="calendar-delivery">

<script type="text/javascript">
       $(window).on('load', function () {
            if ( $('.calendar-delivery')[0].type = 'date' )
            {
                $('.calendar-delivery').datepicker(
                {
                    dateFormat: "dd-mm-yy",
                    minDate: -5,
                    maxDate: +5,       
                    beforeShowDay: function(date) {
                    var day = date.getDay();
                    return [(day != 0), ''];
                    }
                }   
                );        
            }
         });
</script>
</body>
</html>

1 Ответ

0 голосов
/ 20 апреля 2020

Проблема в том, что вы определили средство выбора на входе date. Вместо этого его необходимо использовать для простого ввода text.

Также обратите внимание, что условие, которое проверяет тип поля в вашем JS, должно быть удалено. Частично по вышеуказанной причине, а также потому, что логика c сломана. = используется для установки значения, тогда как == или === должны использоваться для проверки равенства.

$(window).on('load', function() {
  $('.calendar-delivery').datepicker({
    dateFormat: "dd-mm-yy",
    minDate: -5,
    maxDate: +5,
    beforeShowDay: function(date) {
      var day = date.getDay();
      return [(day != 0), ''];
    }
  });
});
<script src="https://code.jquery.com/jquery-1.11.2.min.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js" type="text/javascript"></script>
<link type="text/css" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" />
<input type="text" class="calendar-delivery">
...