C# AJAX请求后的Javascript
加载页面时,javascript中的函数commentsShowHideEffect将运行。当发出ajax请求时,方法commentsShowHideEffect中的所有指令都将消失。在ajax请求后,如何恢复这些IsIntruction或再次调用commentsShowHideEffect方法C# AJAX请求后的Javascript,c#,javascript,asp.net,ajax,C#,Javascript,Asp.net,Ajax,加载页面时,javascript中的函数commentsShowHideEffect将运行。当发出ajax请求时,方法commentsShowHideEffect中的所有指令都将消失。在ajax请求后,如何恢复这些IsIntruction或再次调用commentsShowHideEffect方法 <script> $(function () { commentsShowHideEffect(); }); </script} <asp:U
<script>
$(function () {
commentsShowHideEffect();
});
</script}
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="MessageButton" />
</Triggers>
<ContentTemplate>
<asp:Timer ID="RefreshTimer" runat="server" Interval="500" />
<asp:DataList ID="ChatDataList" runat="server" >
<ItemTemplate>
<td><asp:Label ID="lblRaterName" runat="server" Text='<%# Eval("Text")%>'></asp:Label></td>
</ItemTemplate>
</asp:DataList>
</ContentTemplate>
</asp:UpdatePanel>
在jQuery范围外定义commentsShowHideEffect:
<script>
function commentsShowHideEffect() {
//do something
}
$(document).ready(function (){
commentsShowHideEffect();
});
</script>
此外,我更喜欢使用document.ready语法,因为程序员更清楚地了解它是什么。在jQuery范围外定义commentsShowHideEffect:
<script>
function commentsShowHideEffect() {
//do something
}
$(document).ready(function (){
commentsShowHideEffect();
});
</script>
此外,我更喜欢使用document.ready语法,因为程序员更清楚地了解它是什么。您在问题中没有提到jQuery,在标记中也没有提到。 但您看到的代码表明您正在使用它,因此这里有一个指向相关文档页面的链接: 在您的情况下,这应该是有效的:
$(document).ajaxComplete(function(event,request, settings) {
commentsShowHideEffect();
});
请注意,以上内容将针对每个ajax请求触发。如果您想要更多的控制权,您应该对单个请求使用complete或success回调。您在问题中没有提到jQuery,在标记中也没有提到。 但您看到的代码表明您正在使用它,因此这里有一个指向相关文档页面的链接: 在您的情况下,这应该是有效的:
$(document).ajaxComplete(function(event,request, settings) {
commentsShowHideEffect();
});
请注意,以上内容将针对每个ajax请求触发。如果您想要更多的控制,您应该对单个请求使用complete或success回调。您可以绑定事件,该事件将在更新面板完成ajax请求后触发
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
alert("After ajax call ended");
}
您可以绑定事件,该事件将在更新面板完成ajax请求后触发
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
alert("After ajax call ended");
}
但是当AJAX刷新ContentTemplate时,函数commentsShowHideEffect中的所有IsIntruction将不再工作。请求发出后,如何使它们再次工作?您能否在问题中澄清一下,您的说明是什么意思?但是当AJAX刷新内容模板时,函数注释ShowHideEffect中的所有内容都不再工作。在提出请求后,如何使它们再次工作?你能在问题中澄清你的指示是什么意思吗?这就是我要找的。这就是我要找的。