我知道通过上述主题,您可能认为这是一个简单的问题。但显然,事实并非如此。请允许我在这里解释我的要求。
我正在使用bootstrap构建一个webforms ASP.NET应用程序。并且我建立了这个转发器控件来显示一些数据,其中我在项目模板中附加了一个按钮以供注释。我希望按钮启动一个模式,显示转发器上该特定数据项的注释列表,并且还有一个供用户删除注释的条款(类似于Facebook注释)。下面是bootstrap模式的标记。
<div class="modal fade" id="myModal" 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">
×</button>
<h4 class="modal-title" id="myModalLabel">
Modal title</h4>
</div>
<div class="modal-body">
<asp:Repeater ID="rptComments" runat="server">
<ItemTemplate>
<div style="float: left; width: 100%;" class="bg-info">
<b>'<%#GetUserInfo(Eval("UserId")) %>': </b>'<%# Eval("Comment") %>'
<br />
<div class="pull-right text-muted small">
<em>'<%#GetTimeOfComment(Eval("DateCommented")) %>'</em>
</div>
</div>
<div style="clear: both; line-height: 0px">
</div>
</ItemTemplate>
</asp:Repeater>
<cc1:PollCommentsDataSource ID="PollCommentsDataSource1" runat="server" SelectMethod="GetByPollQuestionId" EnableTransaction="false">
<DeepLoadProperties Method="IncludeChildren" Recursive="false">
</DeepLoadProperties>
<Parameters>
<asp:ControlParameter ControlID="btnModal" Name="ModalPollQuestionId" />
</Parameters>
</cc1:PollCommentsDataSource>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">
Close</button>
<button type="button" class="btn btn-primary">
Save changes</button>
</div>
</div>
</div>
</div>
我将上面的模态标记放在转发器之外,我在按钮中触发它。原因是模态不会隐藏在模态背景之后。但问题是数据源PollCommentsDataSource
应该填充模式中的转发器没有找到按钮,因为它在主转发器内。我的问题是如何才能看到按钮?在代码隐藏中做任何事都不是一个选择,因为我不希望按钮点击进入服务器(模式启动会很尴尬)
P.S启动模态的按钮是一个html按钮(<button></button>
)
感谢。