【问题标题】:How to invoke Html button control in repeater control如何在中继器控件中调用 Html 按钮控件
【发布时间】:2013-02-14 10:23:17
【问题描述】:

以下是我的代码,谁能指导我调用中继器控件上的html按钮。

标记:

      <asp:Repeater ID="rptList" runat="server" onitemcommand="rptList_ItemCommand1">
 <HeaderTemplate>
    <table id="tbllist">
        <tr>
            <th>Qty</th>
            <th width="100%" align="left">Item</th>
            <th></th>
        </tr>
</HeaderTemplate>
<ItemTemplate>
        <tr>
            <td align="center"><%# Eval("Quantity")%></td>
            <td align="left"><%# Eval("ItemName")%></td>
            <td align="center"><input id="Button1" runat="server" commandname="btnAdd" type="button" value="Addtocart" /></td>
        </tr>
</ItemTemplate>
<FooterTemplate>
    </table>
</FooterTemplate>

.CS文件代码:

   protected void rptList_ItemCommand1(object source, System.Web.UI.WebControls.RepeaterCommandEventArgs e)
    {
        if (e.CommandName == "btnAdd")
        {
            Response.Write("hello,I am a button.");
        }

    }

【问题讨论】:

  • 您忘记了输入中的 runat="server" 标签。更好的选择是使用 ASP:Button 控件的输入作为按钮类型
  • 感谢@SaroopTrivedi 的回复,我正在使用 HTML 控件,尽管我添加了 runat="server",但当我点击按钮时没有任何反应。你能建议我在 . cs 文件
  • Kittu:你需要添加 CommandName 并将该 Commandname 搜索到 ItemCommand 事件中
  • 嗨@SaroopTrivedi,即使我添加了命令名也没有看到任何响应。如果你能指导我,我已经编辑了上面的代码。
  • 为什么使用html输入法?

标签: c# asp.net asprepeater


【解决方案1】:

您使用了没有 runat="server" 的输入

改变

<input id="btnAddtocart" type="button" value="Addtocart" />

<input id="btnAddtocart" runat="server" type="button" value="Addtocart"  CommandName="CommandName"/>

使用 asp:button 代替 input type="button"

 <asp:Button ID="btnAddtocart"  runat="server" CommandName="CommandName"/>

【讨论】:

    【解决方案2】:

    你使用了没有runat="server"的input,你需要添加runat="server"做一个按钮服务器按钮控件并执行postback

    改变

    <input id="btnAddtocart" type="button" value="Addtocart" />
    

    <input id="btnAddtocart" runat="server" type="button" value="Addtocart" />
    

    如果您没有任何特殊原因,请使用 asp:button 而不是 input type="button"

     <asp:Button ID="btnAddtocart"  runat="server" Text="Addtocart" CommandName="Addtocart"/>
    

    【讨论】:

    • 感谢@Adil 的回复,我正在使用 HTML 控件,尽管我在单击按钮时添加了 runat="server",但没有任何反应。您能否建议我是否需要添加任何内容。 cs 文件
    • 如果你添加了 runat 那么它应该可以工作,告诉我你在哪里以及如何绑定中继器?
    猜你喜欢
    • 1970-01-01
    • 2014-06-05
    • 2010-12-16
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多