【发布时间】:2014-06-11 06:51:43
【问题描述】:
我的网站上有两个元素:
<asp:DropDownList CssClass="SelectionDDL" ID="ddlClientMapFilter" runat="server"></asp:DropDownList>
以及页面上的其他地方:
<asp:TextBox ID="tbFromDate" runat="server" OnTextChanged="ddl_ReportFilterChanged"></asp:TextBox>
<asp:TextBox ID="tbToDate" runat="server" OnTextChanged="ddl_ReportFilterChanged"></asp:TextBox>
在 Javascript 中:
$(function(){
$(document).on("change", $("#ddlClientMapFilter"), function() {
RefreshMapList();
});
});
以及页面上的其他地方:
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(OnAsychPostback);
function OnAsychPostback(s, e) {
$("#tbFromDate").datepicker({
defaultDate: "-1",
changeMonth: true,
numberOfMonths: 3,
onClose: function (selectedDate) {
$("#tbToDate").datepicker("option", "minDate", selectedDate);
}
});
$("#tbToDate").datepicker({
//defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 3,
onClose: function (selectedDate) {
$("#tbFromDate").datepicker("option", "maxDate", selectedDate);
}
});
}
现在是奇怪的部分。
一切似乎都在工作,除了每次我使用任何日期选择器选择一个日期时,下拉事件都会被触发。我知道解决方案很简单,添加 if 并检查事件的目标是否是该下拉列表,但我想知道如何不触发该事件,而且我在该事件旁边附加了大量其他事件,并且只有这个事件被解雇了。
显然某处有一个错误,但我不知道如何找到它的任何想法?
【问题讨论】:
标签: javascript jquery asp.net jquery-ui-datepicker jquery-events