【问题标题】:Update panel not working radio button inside repeater in visual studio 2010更新面板在 Visual Studio 2010 中的中继器内不起作用单选按钮
【发布时间】:2016-07-06 07:54:11
【问题描述】:

我在更新面板内的中继器中有一个单选按钮。当我单击单选按钮时,整个页面都会重新加载。同样的代码在 Visual Studio 2008 中运行良好,但在 2010 中无法运行。

ASPX...

<asp:UpdatePanel ID="UpdatePanel2" runat="server">
    <ContentTemplate>
        <fieldset>
            <div class="row" id="divSize" runat="server">
                <label class="label col col-2">Size</label>
                <section class="col col-10">
                    <div id="divMultisize" runat="server" class="inline-group row" >
                        <asp:Repeater ID="rptSizeType" runat="server" OnItemDataBound="rptSizeType_OnItemDataBound">
                            <ItemTemplate>
                                <section class="col col-12">
                                    <asp:RadioButton ID="rbSize" GroupName="size" runat="server" AutoPostBack="true" Text='<%# Eval("SizeType")%>' class="radiobtn" OnCheckedChanged="rbSizeType_CheckedChanged" ></asp:RadioButton>
                                    <asp:Label ID="lblSizeTypeID" runat="server" Visible="false" Text='<%# Eval("SizeTypeID")%>'></asp:Label>
                              </section>
                            </ItemTemplate>
                        </asp:Repeater>
                        <div class="clearfix"></div>
                        <asp:Repeater ID="rptSize" runat="server">
                            <ItemTemplate>
                                <section class="col col-4">
                                    <label class="checkbox" style="margin-right:0; min-width:0;">
                                        <asp:CheckBox ID="chkSize" runat="server" onclick = "Disable(this)"></asp:CheckBox>
                                        <i></i><asp:Label ID="lblSize" runat="server" Text='<%# Eval("Size") %>'></asp:Label>
                                    </label>
                                    <section class="col col-8">
                                        <label class="input" id="lblQuantity" runat="server">
                                              <asp:TextBox ID="txtQuantity" runat="server" placeholder="Quantity"></asp:TextBox>
                                        </label>
                                    </section>
                                </section>
                            </ItemTemplate>
                        </asp:Repeater>
                        <div class="clearfix"></div>
                    </div>
                </section>
            </div>
        </fieldset>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="rptSizeType" />
    </Triggers>
</asp:UpdatePanel>

代码...

protected void rptSizeType_OnItemDataBound(object sender, RepeaterItemEventArgs e)
{
        // Code for bind rptSizeType
}

protected void rbSizeType_CheckedChanged(object sender, EventArgs e)
{
        // Code for bind rptSize
}

【问题讨论】:

  • 错误是什么?
  • 您在哪个浏览器中测试。此类问题与开发工具无关。
  • 我使用 chrome。所有代码在 2008 年都运行良好,但是当我在 2010 年运行相同的代码时,整个页面都会刷新。

标签: c# asp.net visual-studio-2010 asp.net-4.0


【解决方案1】:

我找到了解决方案 使用.net 4.0时只需输入ClientIDMode="AutoID"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-04
    • 1970-01-01
    • 2015-11-25
    • 2022-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多