我有一個日期選擇器,它具有將在日期選擇器輸入字段上執行「更改」功能的onSelect屬性。 「更改」事件運行一個函數來填充選擇列表。只要我選擇日期選擇器,這項工作就會生效,但如果我在輸入字段中手動輸入日期,則更改事件將執行兩次,而選擇列表將具有重複值。日期選擇器更改事件在手動輸入時觸發多次
$("#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,認爲這會刪除列表中的所有元素,但它仍然會倍增。
任何幫助表示讚賞。
刪除$(本)從ONSELECT方法.change(),但該方法是(即使現在它是空的),這 黑客在我的測試中工作 – minhajul 2015-10-12 14:20:54