编写组件,使用JavaScript更新UpdatePanel
2010-09-14 13:31:00 来源:WEB开发网使用JavaScriptUpdater
JavaScriptUpdater非常简单,只需一个最简单的例子,大家就可以明白它的使用方式:
JavaScriptUpdater使用示例
<%@ Register Assembly="UpdatePanelHelper" Namespace="UpdatePanelHelper" TagPrefix="helper" %>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<%= DateTime.Now.ToString() %>
</ContentTemplate>
</asp:UpdatePanel>
<helper:JavaScriptUpdater runat="server" ID="Updater" MethodName="Refresh">
<UpdatePanels>
<helper:UpdatePanel UpdatePanelID="UpdatePanel1" />
</UpdatePanels>
</helper:JavaScriptUpdater>
<input type="button" onclick="UpdatePanels.Refresh()" value="Refresh" />
点击最下方定义的按钮时,会调用UpdatePanels.Refresh()方法,于是则会更新UpdatePanel1。请注意,UpdatePanel1的UpdateMode为Conditional,我们是通过在JavaScriptUpdater中指定它,用于强制对它进行更新。我们再看一下它生成的JavaScript代码和HTML就会更加清楚它的实现方式了。如下:
在客户端生成的内容
<script type="text/javascript">
if (!window.UpdatePanels) window.UpdatePanels = {};
UpdatePanels._createUpdateMethod = function(btnId)
{
return function()
{
__doPostBack(btnId, '');
}
}
UpdatePanels['Refresh'] = UpdatePanels._createUpdateMethod('UpdaterButton');
</script>
...
<a id="UpdaterButton"
href="javascript:__doPostBack('UpdaterButton','')"
style="display:none;">Update</a>
更多精彩
赞助商链接