我有一份表格和公司的dropdwonlist:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<%--DataSourceID="sdsEmpresaTarea"--%>
<asp:DropDownList ID="ddlEmpresaTarea" runat="server"
DataValueField="IdEmpresa" DataTextField="Empresa"
AutoPostBack="true" ViewStateMode="Enabled">
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
第二个下拉列表显示公司下拉列表中所选公司的联系人:
<asp:DropDownList ID="ddlContactoTarea" runat="server"
DataValueField="IdContacto" DataTextField="Nombre" ViewStateMode="Enabled">
</asp:DropDownList>
日期选择器文本框:
<asp:TextBox ID="txtDate" runat="server" Text="" CssClass="datepicker" MaxLength="10" ViewStateMode="Enabled"/>
<asp:RequiredFieldValidator ID="rfvDate" runat="server"
ErrorMessage="Date required"
ControlToValidate="txtDate" Display="Dynamic">
</asp:RequiredFieldValidator>
问题是当我展开下拉列表并选择一个选项时 下拉列表执行autopostback并在代码中我有一个方法来搜索公司下拉列表中所选公司的联系人,然后datepicker不起作用。 我必须强调的是,当我对页面收费时,datepicker运行良好,但是当我在下拉列表中选择一家公司时,则datepicker不起作用,我认为这是因为jcc代码在autopostback之后没有刷新
每次选择公司的下拉列表时,如何重新刷新javascript代码?
答案 0 :(得分:1)
UpdatePanel完全替换更新时更新面板的内容。这意味着您订阅的那些事件不再被订阅,因为该更新面板中有新元素。
function EndRequestHandler(sender, args) {
try {
// re-bind your javascript/jQuery events here
} catch (e) {};
}
window.onload = Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
PageRequestManager 是一个javascript对象,如果页面上有更新面板,则该对象自动可用。
答案 1 :(得分:1)
在Sys.Application.add_load
$(function(){
Sys.Application.add_load(function () {
// your Java script Code here
});
});