Код: Выделить всё
$(document).ready(function() {
///dateee picker
$("#date-range-options").select2({
placeholder: "Select",
minimumResultsForSearch: -1,
closeOnSelect: false,
allowClear: false
});
$("#date-range-options").on('select2:open', function() {
$("#custom-range").hide();
$("#startdatetext").text("");
$("#enddatetext").text("");
$("#startDate-text").text("");
$("#endDate-text").text("");
})
$("#date-range-options").on('select2:select', function() {
console.log("date cal", $(this).val())
selectedDateOpt = $(this).val();
$("#startdatetext").text("");
$("#enddatetext").text("");
$("#startDate-text").text("");
$("#endDate-text").text("");
$('.selectedDateContainer').hide();
if ($(this).val() === "custom") {
console.log("date inside", $(this).val())
$("#custom-range").show();
$("#btn-block").show();
$(".custom-range-datepick").show().addClass('flex-important');
$(".custom-range-datepick").removeClass('hidden-important');
$("#date-range-options").select2('close');
$("#start-date-container").datepicker({
dateFormat: "yy-mm-dd",
onSelect: function(selectedDate) {
startDateText = '';
startDateText = selectedDate;
console.log("selecteddd end", startDateText)
$("#end-date-container").datepicker("option", "minDate", selectedDate);
document.getElementById('startdateText').innerHTML = startDateText
document.getElementById('startDate-text').innerHTML = startDateText
console.log("Start Date:", startDateText);
}
});
$("#end-date-container").datepicker({
dateFormat: "yy-mm-dd",
onSelect: function(selectedDate) {
endDateText = "";
endDateText = selectedDate;
console.log("selecteddd end", endDateText)
$("#start-date-container").datepicker("option", "maxDate", selectedDate);
document.getElementById('enddateText').innerHTML = endDateText
document.getElementById('endDate-text').innerHTML = endDateText
console.log("Custom Range Selected:");
console.log("End Date:", endDateText);
}
});
} else {
$('.selectedDateContainer').hide();
$("#btn-block").hide()
console.log("date outside", $(this).val())
$("#custom-range").hide();
$(".custom-range-datepick").removeClass('flex-important');
$(".custom-range-datepick").hide().addClass('hidden-important');
getFilterDataAward();
}
});
$("#custom-range").hide();
$("#date-range-options").val("").trigger('change');
$("#apply-btn-date").click(function() {
console.log("inside apply btn")
const selectedOption = $("#date-range-options").val();
console.log("selectedOpy", selectedOption)
if (selectedOption === "custom") {
$("#date-range-options").select2('close');
$("#custom-range").hide();
getFilterDataAward();
$('.selectedDateContainer').show();
} else {
console.log("Selected Option:", selectedOption);
$('.selectedDateContainer').hide();
}
});
$("#cancel-btn-date").click(function() {
$("#custom-range").hide();
$("#date-range-options").val("").trigger('change');
$("#startdateText").text("");
$("#enddateText").text("");
$("#date-range-options").select2('open');
filterRequest.startDate = null;
filterRequest.endDate = null;
})
$("#reset-btn-date").click(function() {
$("#custom-range").hide();
$("#date-range-options").val("").trigger('change');
$("#startdateText").text("");
$("#enddateText").text("");
$("#startDate-text").text("");
$("#endDate-text").text("");
$(".selectedDateContainer").hide();
})
});
function getFilterDataAward() {
console.log("calls api")
}Код: Выделить всё
#custom-range {
z-index: 99999;
position: absolute;
display: none;
background-color: #fff;
padding: 10px 2px 5px 2px;
border: 1px solid #000;
}Код: Выделить всё
Date Range
Week
Month
Year
Custom Range
Start DateEnd Date
Start Date:
End Date:
ResetCancelApply
Я использую библиотеку select2 для реализации раскрывающегося списка дат. Возникла проблема с если нажимать на пользовательскую опцию снова и снова, пользовательская дата не открывается.
Например, если я нажимаю на пользовательскую опцию даты в первый раз, она открывается, но не во второй раз. Если я нажму на любую другую опцию, а затем снова нажму на нее. Оно открывается. Как это исправить. Я хочу, чтобы это работало одинаково, независимо от того, нажимаю ли я на него постоянно. Вот мой рабочий фрагмент кода для справки
Подробнее здесь: https://stackoverflow.com/questions/786 ... cked-again
Мобильная версия