将非标准属性添加到 Repeater 中的 asp:LinkButton 会阻止 OnItemCommand 的运行
本文关键字:LinkButton OnItemCommand 运行 asp 属性 非标准 添加 中的 Repeater | 更新日期: 2023-09-27 18:35:19
我正在将Foundation 5 Reveal Modal 组件与<asp:LinkButton>
集成。 要使显示模式正常工作,它需要向<asp:LinkButton>
添加data-reveal-id
的非标准 HTML 属性。如果我"不"在下面的.aspx
中添加此属性,则单击链接按钮将触发rptNotice_ItemCommand
。但是,当data-reveal-id
添加到 LinkButton 时,如下所示rptNotice_ItemCommand
不会运行,并且lbMessage
不会更新。数据库在提交模式表格时需要lbMessage
。
我如何让它工作?
有没有其他方法可以跟踪消息 ID?
在.aspx
文件中
<!-- Foundation 5 Reveal Modal -->
<div id="replyModal" class="reveal-modal" data-reveal>
<h2>Reply to Notice</h2>
<asp:Label ID="lbMessage" runat="server" />
<asp:TextBox ID='tbFollowQuestion' runat="server" TextMode="MultiLine" Width="100%" /><br />
<asp:Button ID="btnFollowCancel" runat="server" Text="Cancel" OnClick="followQuestionCancel_Clicked" />
<asp:Button ID="btnFollowQuestion" runat="server" Text="Submit" OnClick="followQuestionSave_Clicked" />
<a class="close-reveal-modal">×</a>
</div>
<asp:Repeater ID="rptNotice" runat="server" OnItemCommand="rptNotice_ItemCommand">
<ItemTemplate>
<div class="row padding-bottom-10 border-bottom-1 margin-bottom-10">
<!-- LinkButton -->
<div class="small-6 medium-2 xlarge-1 columns">
<asp:LinkButton data-reveal-id="replyModal" CommandName="Contact" CommandArgument='<%#Eval("MessageId")%>' ToolTip="Reply" runat="server"><img src="/images/icon/envelop.jpg" alt="Contact Us"><strong class="font-size-14">Reply</strong></asp:LinkButton>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
在.aspx.cs
文件中
public void rptNotice_ItemCommand(object source, System.Web.UI.WebControls.RepeaterCommandEventArgs e)
{
lbMessage.Text = "MessageId: " + e.CommandArgument.ToObjectString();
}
由于参数未知,似乎可能存在解析问题。我建议使用CommandArgument字段。尝试"回复"到命令参数。
在后端拆分值并获取操作类型。