0

好的,这是一件事,我的代码中有五个主要的 div,mainClientList、mainTable1、mainTable2、mainTable3 和 mainTable4。mainClientList 包含一个客户端列表,对于每个客户端,其信息会在单击其余 div 时显示。我还有一个复选框,当检查每个客户端的信息时,会一一显示,为此我使用了 setInterval。在设定的时间间隔内,我触发了一个点击事件,该事件是 postbaks。

现在的问题是,当我将更新面板放在这五个divs上时,当用户单击某些客户端时它们正常工作,但是当检查复选框时,发生了多个邮政bak。为什么会这样??

请帮忙...

<body>
<form id="form1" runat="server">
<div>
    <asp:CheckBox ID="chboxRefresh" Checked="false" OnClick="startStopTimer();" runat="server" />
    <div id="mainClientList">
        <input type="hidden" name="reference" id="chboxRefresh_hidden" runat="server" value="" />
        <asp:Button ID="btn" runat="server" style="display:none;" OnClick="Btn_Click" />                    
       <table class="gridtable">
            <tr>
                <td id="row1_1"><asp:CheckBox ID="chk_cl1" runat="server" /></td>
                <td id="row1_2">
                    <div><asp:LinkButton ID="cl1" runat="server" Text="a" OnClick="cl_Click" /></div>
                    <div><br /><asp:Label id="lastUpdatecl1" runat="server" CssClass="lastupdatedclients"></asp:Label></div>
                </td>
            </tr>
            <tr>
                <td id="row2_1"><asp:CheckBox ID="chk_cl2" runat="server"/></td>
                <td id="row2_2">
                    <div><asp:LinkButton ID="cl2" runat="server" Text="b" onclick="cl_Click" OnClientClick="$('#loader').show();"/></div>
                    <div><br/><asp:Label id="lastUpdatecl2" runat="server" CssClass="lastupdatedclients"></asp:Label></div>
                </td>
            </tr>
            <tr>
                <td id="row3_1"><asp:CheckBox ID="chk_cl3" runat="server"/></td>
                <td id="row3_2">
                    <div><asp:LinkButton ID="cl3" runat="server" Text="c" onclick="cl_Click" OnClientClick="$('#loader').show();"/></div>
                    <div><br/><asp:Label id="lastUpdatecl3" runat="server" CssClass="lastupdatedclients"></asp:Label></div>
                </td>
            </tr>                     
        </table>
    </div>

    <div id="mainTable1">
        some table
    </div>

    <div id="mainTable2">
        some table
    </div>

    <div id="mainTable3">
        some table
    </div>

    <div id="mainTable4">
        some table
    </div>
</div>
</form>

<script type="text/javascript" language="javascript">
    function startStopTimer() 
    {         
        setInterval(pageReload, 10000);           
    }
    function pageReload() 
    {
        clearInterval(intervalIDSelect);
        document.getElementById('<%=btn.ClientID %>').click();
    }

</script>

选中 checkboxRefresh 时 startStopTimer 触发了哪些 postbaks。

4

1 回答 1

0

请将复选框自动回发属性设置为 true 和

后面的代码

   public void checkbox_CheckedChanged(object sender, EventArgs e)
    {
     if (!Page.IsPostBack)
        {
          //write here your codes
         }

    }

我希望我能帮助你

于 2013-04-28T14:51:26.453 回答