我正在使用Metronic Theme(Bootstrap)。在代码背后的listboxselectedindexchanged
事件中,我将css ("span12 m-wrap m-ctrl-medium date-picker")
添加到文本框中,该文本框会在点击时弹出日历。它运行正常......然后我在页面中添加了一个更新面板。这导致日历停止弹出。然后我注意到,如果回复发生,日历开始工作。但我不希望任何回复。我怀疑下面的代码。我假设App.init()
没有回复就不会被解雇。任何的想法?
<script>
jQuery(document).ready(function () {
App.init();
Search.init();
TableEditable.init();
});
</script>
这是我修改css的地方:
protected void lb1_SelectedIndexChanged(object sender, EventArgs e)
{
if (lb1.SelectedValue.Contains("Date"))
{
txtValue.CssClass = "span12 m-wrap m-ctrl-medium date-picker";
ddlFilter.Items.Clear();
ddlFilter.Items.Add("Before");
ddlFilter.Items.Add("After");
ddlFilter.Items.Add("Between");
}
}
回帖后,我的意思是完全回复。当我使用Update Panel页面时,不会在每次单个事件后重新加载,例如click,selectedindexchanged等。但通常会这样做。
这是我放置更新面板的地方:
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:ListBox ID="lb1" runat="server" OnSelectedIndexChanged="lb1_SelectedIndexChanged" Height="150" AutoPostBack="true" ViewStateMode="Enabled"></asp:ListBox>
</ContentTemplate>
<Triggers><asp:AsyncPostBackTrigger ControlID="lb1" EventName="SelectedIndexChanged" /></Triggers>
</asp:UpdatePanel>
添加css的Jquery:
$("select[id*='lb1']").bind("change", function () {
$("#txtValue").css = "span12 m-wrap m-ctrl-medium date-picker";
});