У меня есть DatePicker, у которого есть свойство onSelect, которое будет выполнять функцию «изменение» в поле ввода datepicker.Событие «Изменить» запускает функцию для заполнения списка выбора.Это работает до тех пор, пока я выбираю указатель даты, но если я вручную введу дату в поле ввода, событие изменения будет выполнено дважды, и список выбора будет иметь дублированные значения.
$("#txtStartDate").datepicker({
defaultDate: +1,
dateFormat: "mm/dd/yy", //yy format represents a (4) digit year
minDate: new Date($("#ctl00_ContentPlaceHolder2_hidfldJunDate").val()),
maxDate: new Date($("#ctl00_ContentPlaceHolder2_hidfldMayDate").val()),
showOtherMonths: true,
changeMonth: true,
changeYear: true,
beforeShowDay: $.datepicker.noWeekends,
firstDay: 1,
showButtonPanel: true,
showOn: "button",
onSelect: function () { $(this).change(); },
buttonImage: "../Scripts/JQuery/ui/calendar.gif",
buttonImageOnly: true
}).mask("99/99/9999");
$("#txtStartDate").change(function () {
if (($("#txtStartDate").val() != "") && ($("#txtStartDate").val() != "__/__/____")) {
var DoDate = CheckDate($("#txtStartDate").val());
if (DoDate != "Good") {
alert("Please enter a valid Start Date");
$("#txtStartDate").val("");
$("#txtStartDate").focus();
}
else {
SemesterList($("#txtStartDate").val(), 0);
}
}
});
Так что же делатьМне нужно сделать, чтобы предотвратить многократное срабатывание этого события изменения, чтобы я не получил дубликаты в списке выбора.Я даже пытался выбрать selectlist.remove, думая, что это удалит все элементы в списке, но все равно умножается.
Любая помощь приветствуется.