如何在页面中并行更新多个用户控件 [英] How to update more than one user control parallelly in a page

查看:71
本文介绍了如何在页面中并行更新多个用户控件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我有三个用户控件,每个用户控制每3秒更新一次内容。我在主页面中注册了控件。但是最后一个注册用户控件只更新,其他人没有更新。请帮帮我。



我尝试了什么:



主页:



<%@ Page Language =C#AutoEventWireup =trueCodeBehind =Default.aspx.csInherits =TestApplication.Default%> ;



<%@ Register Src =〜/ TestUserControl.ascxTagPrefix =WebUserControlTagName =WebTag%>



<%@ Register Src =〜/ TestUserControl2.ascxTagPrefix =WebUserControl2TagName =WebTag2%>



<!DOCTYPE html>



< html xmlns =http://www.w3.org/1999/xhtml>

< head runat =server>

< script src =https://code.jquery.com/jquery-1.10.2.js>< ; / script>

< title>< / title>

< / head>

< body>

< form id =form1runat =server>

< asp:ScriptManager ID =ScriptManager3EnablePageMethods =truerunat =server/>



Hi,

I having three user controls, each user controls updating their content at every 3 seconds. I registered the controls in main page.But the last registered user control only updating, others not updating. please help me.

What I have tried:

main page:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TestApplication.Default" %>

<%@ Register Src="~/TestUserControl.ascx" TagPrefix="WebUserControl" TagName="WebTag" %>

<%@ Register Src="~/TestUserControl2.ascx" TagPrefix="WebUserControl2" TagName="WebTag2" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager3" EnablePageMethods="true" runat="server"/>



< WebUserControl:WebTag id =MyControlrunat =server/>


<WebUserControl:WebTag id="MyControl" runat="server"/>









< WebUserControl2:WebTag2 id =Mycontrol2runat =server/>


<WebUserControl2:WebTag2 id="Mycontrol2" runat="server"/>





< / form>

< / body>

< / html>







控制1,



< div id =printerStatusWidgetrunat =server>

< asp:UpdatePanel ID =updatePanelrunat =serverUpdateMode = 有条件的>

< contenttemplate>



</form>
</body>
</html>



control 1,

<div id="printerStatusWidget" runat="server">
<asp:UpdatePanel ID="updatePanel" runat="server" UpdateMode="Conditional">
<contenttemplate>



< a id =faultrunat = 服务器 >

< a id =warningrunat =server>


<a id="fault" runat="server">
<a id="warning" runat="server">



< asp:button ID =updateButtonrunat =serverText =OnClick =updateButton_ClickStyle =display:none />







< script>

setInterval( function(){

$(#<%= updateButton.ClientID%>)。click();

},3000);

< / script>



代码落后,




<asp:button ID="updateButton" runat="server" Text="" OnClick="updateButton_Click" Style="display:none"/>



<script>
setInterval(function () {
$("#<%= updateButton.ClientID %>").click();
}, 3000);
</script>

code behind,

protected void updateButton_Click(object sender, EventArgs e)
        {           
            fault.InnerText="Faults ("+random.Next(1,50)+")";
            warning.InnerText= "Warnings (" + random.Next(1, 50) + ")";
        }







控制2,






control 2,

<div id="currentOrderWidget" runat="server">
            <asp:UpdatePanel ID="updatePanel" runat="server" UpdateMode="Conditional">
                <ContentTemplate>
                    <div id="CurrentOrderWidgetHead">
                        <p id="label">Remaining Time</p> <p class="labelContent" id="remainingTime" runat ="server"></p>
                        <p id="label">Remaining Length</p> <p class="labelContent" id="remainingLength" runat ="server"></p>                           
                    </div>
                    <asp:button ID="currentOrderUpdate" runat="server" Text="" OnClick="currentOrderUpdate_Click" Style="display:none"/>
                </ContentTemplate>
            </asp:UpdatePanel>        
        </div> 
        <script>
            setInterval(function () {
                $("#<%= currentOrderUpdate.ClientID %>").click();
            },3000);
        </script>





代码落后,





code behind,

protected void currentOrderUpdate_Click(object sender, EventArgs e)
        {
            remainingTime.InnerText = "~ " + random.Next(1,12) + " hrs, " + random.Next(1,60) + " mins";
            remainingLength.InnerText = random.Next(1, 1000) + " m  /  ~  " + random.Next(1, 100) + "  m²";
                       
        }

推荐答案

(#<%= updateButton.ClientID%>)。点击();

},3000);

< / script>



代码落后,



("#<%= updateButton.ClientID %>").click();
}, 3000);
</script>

code behind,

protected void updateButton_Click(object sender, EventArgs e)
        {           
            fault.InnerText="Faults ("+random.Next(1,50)+")";
            warning.InnerText= "Warnings (" + random.Next(1, 50) + ")";
        }







控制2,






control 2,

<div id="currentOrderWidget" runat="server">
            <asp:UpdatePanel ID="updatePanel" runat="server" UpdateMode="Conditional">
                <ContentTemplate>
                    <div id="CurrentOrderWidgetHead">
                        <p id="label">Remaining Time</p> <p class="labelContent" id="remainingTime" runat ="server"></p>
                        <p id="label">Remaining Length</p> <p class="labelContent" id="remainingLength" runat ="server"></p>                           
                    </div>
                    <asp:button ID="currentOrderUpdate" runat="server" Text="" OnClick="currentOrderUpdate_Click" Style="display:none"/>
                </ContentTemplate>
            </asp:UpdatePanel>        
        </div> 
        <script>
            setInterval(function () {


#<%= currentOrderUpdate.ClientID%>< /跨度>)点击();
}, 3000 );
< / script >





代码落后,





code behind,

protected void currentOrderUpdate_Click(object sender, EventArgs e)
        {
            remainingTime.InnerText = "~ " + random.Next(1,12) + " hrs, " + random.Next(1,60) + " mins";
            remainingLength.InnerText = random.Next(1, 1000) + " m  /  ~  " + random.Next(1, 100) + "  m²";
                       
        }


这篇关于如何在页面中并行更新多个用户控件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆