C# Asp.Net更新面板不工作

C# Asp.Net更新面板不工作,c#,asp.net,updatepanel,C#,Asp.net,Updatepanel,我正在使用UpdatePanel显示一些通常隐藏的控件 这是我正在使用的代码: <asp:LinkButton runat="server" class="btn blue h27" CausesValidation="false" ID="lnkSuggestArticle" OnClick="lnkSuggestArticle_Click"><%=Supplier.GetResource("Answers_lnkSuggestArticle"

我正在使用
UpdatePanel
显示一些通常隐藏的控件

这是我正在使用的代码:

<asp:LinkButton runat="server" class="btn blue h27" CausesValidation="false" ID="lnkSuggestArticle"
                OnClick="lnkSuggestArticle_Click"><%=Supplier.GetResource("Answers_lnkSuggestArticle")%> <i class="icon icon_next_02 fr"></i></asp:LinkButton>
            <asp:UpdatePanel runat="server">
                <ContentTemplate>
                    <div class="infoRequest" id="divSuggestion" runat="server" visible="false">
                        <br class="clearfix" />
                        <h3>
                            Please provide the information you want to see on our support site:</h3>
                        <br class="clearfix" />
                        <asp:TextBox runat="server" ID="txtSuggestArticle" Rows="10" ValidationGroup="s" Width="100%"
                            TextMode="MultiLine"></asp:TextBox>
                        <div id="divEmailAddress" runat="server" visible="false">
                            <br />
                            <h3>
                                Please enter your email address</h3>
                            <asp:TextBox runat="server" ID="txtEmailAddress" Rows="1" ValidationGroup="s" CssClass="suggestionEmail"
                                TextMode="SingleLine"></asp:TextBox>
                            <br />
                        </div>
                        <br />
                        <asp:Label runat="server" ID="lblSugestedArticleError" ForeColor="Red" Visible="false"></asp:Label>
                        <asp:Label runat="server" ID="lblMessage" ForeColor="Red"></asp:Label>
                        <br />
                        <asp:LinkButton ID="btnSaveSuggestion" ValidationGroup="s" runat="server" OnClick="btnSaveSuggestion_Click"
                            CssClass="btn blue fr"><%=Supplier.GetResource("createticket_btnSuggest")%> <i class="icon icon_next_02 fr"></i></asp:LinkButton>
                        <%--<input type="submit" value="Suggest" class="btnSuggest" />--%>
                        <br />
                        <br />
                        <p id="notice" runat="server">
                            <asp:Label runat="server" ID="lblSuggestionNote" /></p>
                    </div>
                </ContentTemplate>
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="lnkSuggestArticle" />
                </Triggers>
            </asp:UpdatePanel>

但它不会更新页面。当用户单击“建议”按钮时,
div仍然保持隐藏状态。

结果表明Visual Studio中存在一个bug。我在aspx文件中注释了一段代码。结果是,即使代码似乎已被注释,但仍然执行了该代码,这导致添加了另一个更新面板,这给了我一个javascript错误。

您是否看到任何javascript错误?它们中的哪个div?divEmailAddress?您是否与Firebug进行了检查,以确保没有发生您看不到的错误?如果调试,它是否会命中lnkSuggestArticle\u Click方法?您是否尝试过将更新设置为有条件更新或显式地向更新面板添加触发器以查看其是否有效?谢谢您的建议。我检查了一下,发现了一些错误。你的按钮提示文章在updatepanel之外。因此,在更新面板中移动它或将其作为updatepanel的触发器
   protected void lnkSuggestArticle_Click(object sender, EventArgs e)
{
    divSuggestion.Visible = true;
    if (Session["__currentCustomer"] == null)
    {
        divEmailAddress.Visible = true;
    }
}
   protected void lnkSuggestArticle_Click(object sender, EventArgs e)
{
    divSuggestion.Visible = true;
    if (Session["__currentCustomer"] == null)
    {
        divEmailAddress.Visible = true;
    }
}