在Grid View Row Command事件中,引导弹出窗口未显示来自服务器端的数据,c#

时间:2013-10-07 08:07:30

标签: c# jquery asp.net twitter-bootstrap

我在更新面板中有网格视图,点击链接按钮会触发网格视图行命令事件。 在这行命令事件中,我想打开一个引导程序弹出窗口,并从后面的代码中绑定另一个网格,该代码也位于更新面板中。

问题是网格视图触发行命令事件并正确获取数据并将其绑定到弹出网格视图,但弹出窗口不显示新绑定网格视图的数据。

我已经尝试过触发器以及更新面板我的代码请帮助我,我真的陷入了这个,提前谢谢

 <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
                        <ContentTemplate>
                            <asp:GridView ID="gvResponseList" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ListId"
                                Width="550px" AllowPaging="True" OnRowCommand="gvResponseList_RowCommand" CssClass="table table_standard_inbox table-striped table-bordered">
                                <Columns>
                                    <asp:TemplateField HeaderText="Response">
                                        <ItemTemplate>
                                            <asp:LinkButton class="popup" data-toggle="modal" ID="lnkbtnSelectAnswer" Visible='<%#Eval("ResponseTitle") != null %>' runat="server" Text="Choose From Previous Answer" CommandName="AddAnswerToTextBox" CommandArgument='<%# ((GridViewRow) Container).RowIndex %>'></asp:LinkButton>
                                            <br />
                                            <asp:TextBox ID="txtResponse" runat="server" TextMode="MultiLine" Height="60px" Width="400"></asp:TextBox>
                                            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Display="Dynamic"
                                                ValidationGroup="Submit" ControlToValidate="txtResponse" ErrorMessage="*"></asp:RequiredFieldValidator>
                                            <br />
                                        </ItemTemplate>
                                    </asp:TemplateField>
                                </Columns>
                                <EmptyDataTemplate>
                                    <b>No record found</b>
                                </EmptyDataTemplate>
                            </asp:GridView>
                        </ContentTemplate>
                        <Triggers>
                            <asp:AsyncPostBackTrigger ControlID="gvResponseList" EventName="RowCommand" />
                        </Triggers>
                    </asp:UpdatePanel>
<!-- Modal -->
            <div class="modal fade" id="divPreviousResponses" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
                <div class="modal-dialog">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                            <h4 class="modal-title">Prevoius Answers</h4>
                        </div>
                        <div class="modal-body">
                            <asp:GridView ID="gvSelectAnswer" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ListId"
                                Width="550px" AllowPaging="True" ItemType="TextualUserAnswersEntity" OnRowCommand="gvSelectAnswer_RowCommand" OnPageIndexChanging="gvSelectAnswer_PageIndexChanging">
                                <Columns>
                                    <asp:TemplateField HeaderText="Previous Response">
                                        <ItemTemplate>
                                            <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
                                                <ContentTemplate>
                                                    <asp:Label ID="lblResponse2" runat="server" Text='<%#Eval("ResponseTitle") %>'></asp:Label>
                                                </ContentTemplate>
                                            </asp:UpdatePanel>
                                        </ItemTemplate>
                                    </asp:TemplateField>
                                </Columns>
                                <EmptyDataTemplate>
                                    <b>No record found </b>
                                </EmptyDataTemplate>
                            </asp:GridView>
                        </div>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                        </div>
                    </div>
                    <!-- /.modal-content -->
                </div>
                <!-- /.modal-dialog -->
            </div>
            <!-- /.modal -->

1 个答案:

答案 0 :(得分:0)

我会通过以下方式解决此问题: 1.将gridView显示为由jQuery的dataTable lib格式化的一些HTML表 该表的数据必须由服务器端作为Json发送 2.单击偶数表行时,向服务器端调用Ajax以获取(作为Json)您需要显示的一些其他信息,并将其解析到Bootstrap模式的主体中。 所有这一切都将完美地发挥作用,同样重要的是 - 它将比你现在尝试的更快地工作