我有一个 jquery 重的 ASP.net 页面。
在此页面上,我在更新面板中有一个网格视图,因此我可以进行异步更新。
<asp:GridView ID="gvMail" runat="server" GridLines="None"
AutoGenerateColumns="false" Width="100%" OnRowDataBound="mail_RowDataBound"
CssClass="gridview" DataKeyNames="id">
<HeaderStyle HorizontalAlign="Left" />
<RowStyle ForeColor="#0072BC" HorizontalAlign="Left" CssClass="draggable" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
<!-- Hidden Link button for Async call back -->
<asp:UpdatePanel ID="updatePanel2" runat="server">
<ContentTemplate>
<asp:LinkButton ID="btnLoadData" onclick="btnLoadData_Click" runat="server"
Text="Fill GridView" CssClass="none"></asp:LinkButton> <!-- hidden-->
<a href="javascript: AsyncUpdateGridView()">A sync update</a>
<!-- testing purposes only-->
</ContentTemplate>
</asp:UpdatePanel>
因此,通过这个小技巧,我单击 hte 链接按钮来更新工作正常的 gridview。最终,仅调用隐藏链接按钮的 _dopostback 方法的 AsyncUpdateGridView() 将在 Javascript 中。
我遇到的问题是我的 GridView 的列是 Jquery DatePickers 和 Jquery 花式下拉框。他们加载了这个 javascript 调用:
function OnLoadPage() {
$(".jqueryselector").selectbox({
effect: "fade"
});
$(".jquerydatepicker").datepicker({ dateFormat: 'dd-mm-yy' });
}
$(document).ready(function () {
OnLoadPage();
}
我制作 OnLoadPage() 函数的原因是因为我在更新后执行了 _DoPostBack 调用后尝试调用它。
但是,这不起作用。所以现在当页面开始加载时,所有的 jquery datepicker、下拉框和其他我在 GridView 中工作的花哨的东西。但是在异步回调之后,它会重新加载所有默认的 html。