Скрыть div при нажатии кнопки выбора даты и времени

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

На этом изображении, когда я выбираю значение из выпадающего списка и выбираю даты, отображается контейнер, а затем, когда я выбираю строку из табличных данных, теперь отображаются cont и sumdata div. я хочу, когда я снова выбираю даты из средства выбора даты, затем хочу скрыть все разделы… и когда нажимаете на поиск, тогда хотите отобразить контейнер

изображение

 <script type="text/javascript">

         $(function () {

             var currentYear = (new Date).getFullYear();
             var currentMonth = (new Date).getMonth();
             var currentDay = (new Date).getDate();
             $('#fromdate').datepicker({
                 showSecond: false,
                 timeFormat: 'HH:mm',
                 minDate: new Date((currentYear - 2), 12, 1),
                 //minDate: 0,
                 dateFormat: 'yy-mm-dd',
                 maxDate: new Date(currentYear, currentMonth, currentDay),
                 //maxDate: new Date((currentYear   1), 12, 1),
                 onSelect: function (selectedDate) {

                     // Start Date
                     var startDate = $(this).datepicker('getDate');

                     //startDate.SetHours(0);
                     //startDate.setMinutes(0);
                     //startDate.setSeconds(0);

                     $('#todate').datepicker('option', 'minDate', startDate);
                     $('#todate').datepicker('setDate', startDate);

                     // End Date
                     var enddate = $(this).datepicker('getDate');
                     enddate.setDate(enddate.getDate()   60);
                    // endDate.setMonth(endDate.getMonth()   2);
                     $('#todate').datetimepicker('option', 'maxDate', enddate);
                 }
             });



        $('#todate').datepicker({
             showSecond: false,
             timeFormat: 'HH:mm',
             minDate: new Date((currentYear - 2), 12, 1),
             minDate: 0,
             dateFormat: 'yy-mm-dd',
             maxDate: ' 30',
             //maxDate: endDate.setMonth(endDate.getMonth()   2)


         });

       $('#fromdate').on('click', function () {
              $("#tabledata").hide();
             $('#container').hide();
             $("#cont").hide();
             $("#sumdata").hide();
             $("#sum").hide();
         });

         $("#todate").datepicker({
             onSelect: function (dateText) {
                 $("#tabledata").hide();
                 $('#container').hide();
                 $("#cont").hide();
                 $("#sumdata").hide();
                 $("#sum").hide();
             }
         });

     });
  </script>
  

Комментарии:

1. Вы можете использовать событие выбора даты. onselect

2. где я делаю это после успеха или в случае, если еще??? @Загрузка..

Ответ №1:

Используйте эту onselect опцию для выполнения любых JavaScript преобразований

например:

 $(".datepicker").datepicker({
  onSelect: function(dateText) {
    // hide your divs
    $('.mydivs').hide();
  }
});
  

http://api.jqueryui.com/datepicker/#option-onSelect

рабочая скрипка:

https://jsfiddle.net/7dy0wduc/

Комментарии:

1. @rebmaamber — это не ajax событие. это datepicker вариант. вы должны поместить его в свой datepicker оператор create.

2. и я делаю это, но это не работает.. что я пишу вместо datetext?

3. @rebmaamber — что не работает? почему вы запускаете datepicker() так много раз?

4. я не знаю .. я использую, потому что я установил некоторые условия в календаре

5. @rebmaamber — если вы не знаете, что не работает, как я могу вам помочь? одно можно сказать наверняка, вам нужно переписать свой код и убедиться, что вы запускаете только datepicker() один раз для fromdate и один раз для todate. после этого вы можете использовать эту onselect опцию для них обоих, чтобы выполнить любые необходимые преобразования. удачи!