TextBox在Ajax UpdatePanel中不起作用

时间:2014-01-08 11:25:58

标签: c# ajax

我遇到了一些非常奇怪的问题,当时我添加了Ajax updatepanel  触发按钮事件以防止整个页面加载。我补充道  按钮事件很好,但是当我运行调试器来解密代码时  处理文本框返回空,但我添加了文本。当我>试图将文本框移出 updatepanel 找到的  按钮事件无法找到文本框控件。那么有什么问题?

<asp:DataList ID="DL_userpost" runat="server" CssClass="single-posts" RepeatColumns="1"
        OnItemCommand="DL_userpost_ItemCommand">
        <ItemTemplate>
            <div class="single-posts">
                <div class="post-user">
                    <a href="#"></a>
                </div>
                <div class="post-container-all">
                    <div class="post-user-single-img">
                        <asp:Image ID="Img_Twasol" runat="server" ImageUrl='<%# Eval("Post_File")%>' Width="130"
                            Height="99" /></div>
                    <div class="post-user-single-data-tabs">
                        <div class="post-user-single-data-title">
                            <%#Eval("User_Name")%>
                        </div>
                        <div class="post-user-single-data-text">
                            <%#Eval("Post_Content")%>
                        </div>
                    </div>
                </div>
                 <div class="comment">
                        <asp:UpdatePanel ID="UPPublicComment" runat="server" >
                                <ContentTemplate>
                                    <asp:Panel ID="pnpublicpost" runat="server" DefaultButton="Btn_publicpost">
                                        <asp:TextBox runat="server" ID="txt_publicpost" CssClass="comment-tabs2"></asp:TextBox>
                                        <asp:ImageButton ID="Btn_publicpost" CommandName="publicpost" ValidationGroup="publicpost"
                                            runat="server" OnClick="Btn_publicpost_Click" Style="display: none" />
                                        <asp:Label ID="LblpublicpostPID" runat="server" Text='<%#Eval("Post_ID")%>' Visible="false"></asp:Label>
                                    </asp:Panel>
                                </ContentTemplate>
                            </asp:UpdatePanel>
                        </div>
                    </div>
                </div>

            </div>
             </div>
        </ItemTemplate>
    </asp:DataList>

2 个答案:

答案 0 :(得分:1)

我将你上面的代码完全复制到了Markup,并在Code中使用了这个方法...你的代码看起来很好

enter image description here

答案 1 :(得分:0)

UpdateMode="Conditional"中添加UpdatePanel

<asp:UpdatePanel runat="server" ID="UpdInfo" UpdateMode="Conditional">
   <ContentTemplate>
       <asp:TextBox ID="TxtInfo" runat="server />
   </ContentTemplate>
</asp:UpdatePanel>