将非标准属性添加到asp:Repeater中的LinkBut​​ton可以防止OnItemCommand的运行

时间:2014-12-23 22:35:53

标签: c# asp.net zurb-foundation

我正在将Foundation 5 Reveal Modal组件与<asp:LinkButton>集成。要使揭密模式生效,需要向data-reveal-id添加非标准HTML属性<asp:LinkButton>。如果我没有&#39;不是&#39;在下面的.aspx中添加此属性,然后点击LinkBut​​ton将触发rptNotice_ItemCommand。但是,当data-reveal-id添加到LinkBut​​ton时,如下所示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">&#215;</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();
}

1 个答案:

答案 0 :(得分:0)

由于未知参数,似乎可能存在解析问题。我建议使用CommandArgument字段。尝试将“replyModal”发送到CommandArgument。

在后端拆分值并获取操作类型。