繁体   English   中英

异步回发时呈现控件的问题

[英]Issue with rendering control on Async postback

我在我的contentplaceholder中使用此量规。

http://www.dariancabot.com/projects/jgauge_wip/

脚本:

<link rel="stylesheet" href="Scripts/jgauge.css" type="text/css" />
<script type="text/javascript" src="Scripts/jquery-1.8.0.js"></script>
<script language="javascript" type="text/javascript" src="Scripts/jgauge-0.3.0.a3.js"></script>
<script language="javascript" type="text/javascript" src="Scripts/jQueryRotate.2.2.js"></script>
<script language="javascript" type="text/javascript" src="Scripts/excanvas.min.js"></script>
<script type="text/javascript">
    var demoGauge1 = new jGauge(); // Create a new jGauge.
    demoGauge1.id = 'jGaugeDemo1'; // Link the new jGauge to the placeholder DIV.
    $(document).ready(function () {
        demoGauge1.init(); // Put the jGauge on the page by initializing it.
    });
</script>

标记:

<asp:UpdatePanel ID="up1" runat="server">
    <ContentTemplate>
        <div id="jGaugeDemo1" class="jgauge"></div>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="myBtn" />
    </Triggers>
</asp:UpdatePanel>
<asp:Button ID="myBtn" runat="server" Text="Refresh" /> 

我在母版页上有脚本管理器:

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true"></asp:ScriptManager>

但是在异步回发(点击“ myBtn”)之后,仪表消失了。 救命。

由于html元素会在每次异步回发中重新创建更新面板,因此您需要在每个请求上重新生成量规。

我没有使用压力表控制的经验,但是可以做到这一点

var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(onEndRequest);

function onEndRequest(sender, args){    
   demoGauge1.init();       
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM