我正在使用ASP.NET Web窗体。我点击按钮点击一下JavaScript事件。我的问题是这个事件在应用程序的第一次加载时只被触发一次。似乎某种程度上事件解除了按钮。任何人都可以帮我吗?
这是ASPX按钮控件
<asp:Button ID="btnGetReport" runat="server" Text="Apply"></asp:Button>
这是JavaScript代码:
$("#btnGetReport").click(function () {
var fromDate = $('#txtDateFrom').val();
var toDate = $('#txtDateTo').val();
if (fromDate != "" && toDate != "") {
GetReport(fromDate, toDate);
}
else {
alert("\"Date From\" and \"Date To\" fields are required");
}
});
我第一次点击按钮时会触发.click()事件。但是下一次点击不会触发任何东西。
答案 0 :(得分:1)
您使用的是UpdatePanel
吗?
如果答案是肯定的,那么您需要在页面加载和UpdatePanel
更新后绑定点击事件。
$(function () {
var _initialize = {
ReportBindClick : function () {
$("#btnGetReport").on('click', function () {
var fromDate = $('#txtDateFrom').val();
var toDate = $('#txtDateTo').val();
if (fromDate != "" && toDate != "") {
GetReport(fromDate, toDate);
}
else {
alert("\"Date From\" and \"Date To\" fields are required");
}
});
}
}
// Bind on page load complete
_initialize.ReportBindClick();
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function () {
// Bind after UpdatePanel update
_initialize.ReportBindClick();
});
}